Python TypeError tipo de operando suportado (s) para%: 'file' e 'unicode'
Pergunta
Eu estou trabalhando em uma validação de campo Django e eu não consigo descobrir por que estou recebendo um erro de tipo para esta seção:
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()
Eu tenho que converter os dados de alguma forma antes que eu possa passá-lo como uma variável de seqüência?
Solução
Verifique se o seu parêntese.
errado
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
pode estar certo.
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 )
Outras dicas
Apenas uma pequena dica - é melhor módulo subprocess
uso e classe Popen
em vez da função os.popen
. Mais detalhes aqui (docs) .
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow