やろうとしていること
・指定した辞書のキーと同じ名前のファイルが存在する
・ファイルの存在するディレクトリからファイル名を取得し、
・ファイル名と一致した辞書のキーを選択し表示する
例
folder
┗マイノリティーリポート
┗ヘルプ 心がつなぐストーリ
...といったフォルダが存在します
辞書
python
1dic = {'マイノリティ・リポート':1, 'ヘルプ 心がつなぐストーリー':2}
ここで、「ヘルプ 心がつなぐストーリー」の値を取得したい
エラー内容
python
1#普通に直打ちすれば取得できる 2print(dic["ヘルプ 心がつなぐストーリー"]) 3>>2
しかし、
python
1#以下でファイル名「ヘルプ 心がつなぐストーリー」が取得できるとします 2f_name = select_file() 3print(f_name) 4>>ヘルプ 心がつなぐストーリー 5 6#こいつでkeyを指定するとエラー 7print(dic[f_name]) 8>>KeyError: 'ヘルプ 心がつなぐストーリー'
##困っていること
ファイル名は正しく取得できているのに、後者の場合ではなぜえらーとなるのか見当がつきません・・・。
スペースが問題ではないかとか、いろいろ試したがわからず・・・
解決策をご存知の方いらっしゃいましたら、ご教授ください。
お願いいたします。
追記 select_file()の中身
python
1def select_file(): 2 d = "folder" 3 file_list = os.listdir(d) 4 #フォルダのリストを表示して、入力した番号のファイル名を取得 5 for i in range(len(file_list)): 6 print("%s:%s" % (i,file_list[i])) 7 f_name = file_list[int(input("番号を選択:"))] 8 return f_name
回答3件
あなたの回答
tips
プレビュー