0
端末のファイルパス名を入力する正しい方法は何ですか?完全なパスを入力する必要がありますか?ファイルのカーディナリティをチェックするコードを書きました。しかし、パス名をどのように入力しても、常に同じ結果(0:0)が吐き出されます。コードは健全でなければならないが、私が間違って入力しているパス名だと思っている。プロンプトが表示されたらパス名を入力する最良の方法
import os
wide_count = 0
long_count = 0
def card(file_name):
number_of_lines = 0
longest_line = 0
f = open(file_name, "r")
for line in f:
number_of_lines+= 1
if len(line) > longest_line:
longest_line = len(line)
f.close()
if longest_line > number_of_lines:
return 1
else:
return 0
directory = raw_input("Input file pathname: ")
for(current, sub, files) in os.walk(directory):
for f in files:
if card(os.path.join(current, files)) == 1:
wide_count += 1
else:
long_count += 1
print "{0:d} : {1:d}".format(wide_count, long_count)
入力内容を編集することはできますか?そうすれば、入力メソッドやその他の何かによって引き起こされた問題かどうかを確認できます。 – Lafexlos
また、 'os.path.join(current、f)'の代わりに 'os.path.join(current、files)'であることを確信していますか? – Lafexlos
ええ、あなたは 'ファイル'の代わりに 'f'について正しいものでした。しかし、問題は依然として続く。これはパス名を入力する方法です: '入力ファイルのパス名:"/home/dule/Desktop/python "' '0:0' – monolith937