トップページ > プログラム > 2015年03月04日 > 6TumWt/1

書き込み順位&時間帯一覧

15 位/203 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000000021003



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
692
くだすれPython(超初心者用) その25©2ch.net

書き込みレス一覧

くだすれPython(超初心者用) その25©2ch.net
692 :デフォルトの名無しさん[sage]:2015/03/04(水) 20:20:26.62 ID:6TumWt/1
質問です。

環境:Python2.7.8, Windows 8.1 64bit
困ってること:WindowsのコンソールやSendTo経由で波ダッシュ(〜)を含む名前のファイルを開けない
問題のコード:
f = open(u"〜.txt", "r") # OK. スクリプトファイルに直書きしたときは開けます
f = open(sys.argv[1], "r") # これをコンソールやSendTo経由で実行するとIOErrorが出ます
f = open(sys.argv[1].decode(sys.stdin.encoding, "r") # 同上
f = open(sys.argv[1].decode(sys.getfilesystemencoding(), "r") # 同上

直書きしたときは開けるので、decode()の引数を間違えているのだとは思うのですが
一向に解決できません。
対処法をご存知の方、ご回答お願いします。
くだすれPython(超初心者用) その25©2ch.net
693 :692[sage]:2015/03/04(水) 20:23:31.83 ID:6TumWt/1
このスレでは全角チルダで表示されてしまうようですが
問題が起こるのは波ダッシュの方です
くだすれPython(超初心者用) その25©2ch.net
699 :692[sage]:2015/03/04(水) 21:43:55.83 ID:6TumWt/1
>>698
>?がUnicodeなので__argvを使ってるPython2ではsys.argvに正しく入ってません

えぇぇぇぇぇぇぇぇぇぇぇぇ…そんな罠があったのですか(汗)
教えて頂いて助かりました!知らなかったらあと何時間ねばってたことか^^;
素直にそのスクリプトだけpython3で実行するように本体とsendto書き換えてみます
ご親切にどうもありがとうございました!


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。