只是一對夫婦的指針...
from sys import argv
script, filename, = argv
在這裏,你要導入的argv訪問命令行參數,然後期望它包含2個參數 - script(arg 0)和要打印的文件名(arg1)。儘管尾隨的逗號不是合成不正確的,但它不是必需的,只是看起來有點奇怪。我在sys
的內部正式離開argv
,而不是將它拉入當前的命名空間,但這是一個有趣的問題 - 它沒有真正的區別。我可能會扔在一個比特的錯誤處理,以及:
import sys
try:
script, filename = sys.argv
except ValueError as e:
raise SystemExit('must supply single filename as argument')
txt = (filename)
print " Here's your file %r :" % filename
print txt.read()
所有這一切txt = (name)
在這裏做的是使TXT文件名具有的價值。我相信你想被製作txt
一個文件對象,這樣就可以從.read()
它:
txt = open(filename)
print "Here's the file contents of:", filename
print txt.read()
print " I'll also ask you to type it again: "
file_again = raw_input ("> ")
txt_again = open (file_again)
print txt.again.read()
你已經得到了open()
這裏,但txt.again.read()
應txt_again.read()
否則你會得到一個AttributeError
- 所以只是改變這一點,它很好。
另外,文件對象尋求支持,所以你可以只rewind
文件(如你讀文件到最後,什麼都不剩再閱讀),通過使用:
txt.seek(0)
print txt.read()
*您如何運行腳本*? – nneonneo
在通過power shell進行空閒時python filename.py腳本文件名 – user1724593