2009-08-03 8 views
0

私はdjangoフィールドの検証に取り組んでおり、なぜこのセクションのタイプエラーが出るのかわかりません:Python TypeErrorは、%: 'file'と 'unicode'のためのサポートされていないオペランドタイプ

def clean_tid(self): 
    data = self.cleaned_data['tid'] 
    stdout_handel = os.popen("/var/www/nsmweb/jre1.6.0_14/bin/java -jar /var/www/nsmweb/sla.jar -t %s grep -v DAN") % data 
    result = stdout_handel.read() 

文字列変数として渡す前にデータを何らかの方法で変換する必要がありますか?

答えて

1

かっこを確認してください。間違った

stdout_handel = os.popen("/var/www/nsmweb/jre1.6.0_14/bin/java -jar /var/www/nsmweb/sla.jar -t %s grep -v DAN") % data 

正しいかもしれません。

stdout_handel = os.popen("/var/www/nsmweb/jre1.6.0_14/bin/java -jar /var/www/nsmweb/sla.jar -t %s grep -v DAN" % data) 
+0

これは、ありがとう! – Ryan

1

ほんの少しのヒント - それは代わりにos.popen機能のsubprocessモジュールとPopenクラスを使用することをお勧めします。詳細はhere (docs)です。

関連する問題