import os
ot = os.popen("%s") %"ls"
TypeError: unsupported operand type(s) for %: 'file' and 'str'
でのPythonの使用。純粋なストリング操作だよね?どんな助けでも感謝します。エラーが発生した理由を、私はそれを把握することはできませんbashの
import os
ot = os.popen("%s") %"ls"
TypeError: unsupported operand type(s) for %: 'file' and 'str'
でのPythonの使用。純粋なストリング操作だよね?どんな助けでも感謝します。エラーが発生した理由を、私はそれを把握することはできませんbashの
対話型シェルのためにPythonが優れています。
試してみてください。
>>> import os
>>> os.popen("%s")
<open file '%s', mode 'r' at 0x10d020390>
あなたがあなたの前にエラーを見ることができます。 os.popen
の結果はファイルです。次に、文字列操作を適用します。
あなたは、私は、あなたがやろうとしている考えてみてください何をしなければならないものを翻訳:
>>> os.popen("%s" % "ls").read()
または、直接:
>>> os.popen("ls").read()
しかしsubprocess moduleは、通常は好ましい:
>>> import subprocess
>>> subprocess.check_output("ls")
あなたは 'os.popen("%s "%" ls ")'を意味しましたか?あなたは今、 '' os.popen( "%s") '(したがってエラーの' ''file''')と' 'ls" '(' 'の結果に'% ' 「str」)。そしてこれはBashと何が関係しているのですか? – Biffen
はlsファイル名、またはbashで実行して結果を得るコマンドですか? – minocha
あなたは正しいです、%strは "%s"の後に触れなければなりません、分離できないか、エラーになります... – puming