同じところでつまずきました笑。VScodeで「ファイル」→「ユーザー設定」→「設定」→(上部にあるテキストボックスで「 Auto Guess Encoding」を検索)→「Files: Auto Guess Encoding」にチェックを入れる。VScodeで開いたテキストファイルを閉じて再度開くと文字化けが解消されました。
デスクトップ画面から作成したテキストファイルは「デスクトップ」と言うフォルダに自動で入るため、Pythonのファイルが置いてある場所と同じ階層にないと思われます😵 以下の3つのどれかを実施してみて、テキストファイルが読み込めるか試してみてください! ① Pythonファイルをデスクトップ上に移動して、Pythonを実行する ② テキストファイルをPythonファイルが置いてあるフォルダと同じフォルダに入れてPythonを実行する ③ with open('xxxxxx') as f: ← このファイル名を指定するところに、テキストファイルのフルパスを指定する。 フルパスは以下の記事を参照に、調べてみてださい! Windowsのファイルパスの調べ方▶︎ www.resume-next.com/easy_way_to_copy_file_paths/ Macのファイルパスの調べ方 ▶︎ www.too.com/support/faq/mac/finder_os/24480.html もしも、①〜③を実施してもうまく読めこめなかったら、出力されたエラーやコードの詳細を教えていただけたら、もっとお力になれるかもです!
anacondaのSpyder(IPython)でUTF-8ファイルを使用する時は with open('~.txt', 'w', encoding='utf-8') as f: のようにencodingを使用します(自分メモ) print(sys.getdefaultencoding()) はutf-8と出るけど、指定無しだとShiftJISで読み書きしようとしてしまうのはなぜでしょうか?
@@pythonvtuber9917 エラーメッセージです。 例外が発生しました: FileNotFoundError [Errno 2] No such file or directory: 'test.txt' File "C:\Users\AKUREI\Documents\SapuPython\Lesson12\Lesson12_01.py", line 1, in with open("test.txt") as f: ググったりして解決策など試しましたがどうもうまく動作してくれません。
昨日出来なかったことが今日できました。
独学はできなくて辛いこととできた達成感が味わえます。
ありがとうサプーさん
ありがとうございます!
CSVファイル操作編も見てみたい!
今回のはエクセルが一番使えそうな内容でした!
おー!!エクセル便利ですよね!!
分かりやすかったです!
CSVで書き込み処理したいものがあるので、今度試してみます!
コメントありがとうございます😊
プログラムからファイル書き込みができると、できることの幅が広がりますよね!CSV書き込み頑張ってください😉
書き込みの際や追記の際、VScode上では50音は文字化けされるのですが対処法はありますか?
書き込みしたテキストファイルを開くとちゃんと書き込めているのですが...
初心者で結っていることが分からなかったらすみません。
同じところでつまずきました笑。VScodeで「ファイル」→「ユーザー設定」→「設定」→(上部にあるテキストボックスで「 Auto Guess Encoding」を検索)→「Files: Auto Guess Encoding」にチェックを入れる。VScodeで開いたテキストファイルを閉じて再度開くと文字化けが解消されました。
とてもわかりやすく、ご説明ありがとうございます。
今のファイル操作は、TXTファイルのみでしたがいろんなファイル操作でも可能でしょうか?
TXT以外にもCSVやJSONファイルといったものもオープンできますね。
バイナリーファイルは壊れることがあるのでバイナリーモードを指定する必要がありますね!
すみません、追記です。
OS は Windows11、 エディタは VSCode です
4:50付近でのfor文でfor _ in range(2): とありますが、for の後の _ (アンダーバー)はどういう意味合いがあるのでしょうか?
素人質問ですんみません。コメントいただけると有り難いです。
ご質問ありがとうございます!
使わない変数として「 _ 」を使っています。
以下の動画の1:33あたりで詳しく解説しているので、よければ見てみてください!!
ruclips.net/video/G6d_fAClSd4/видео.html
よくわかりました。有難うございました。
@@pythonvtuber9917urlの動画も見たのですがなぜfor _in range(2)でaaa bbb cccという文字列に処理を行った時aaa aaaとならずaaa bbbとなるのでしょうか?そもそもreadlineのメソッドにそういう風に動くアルゴリズムが入ってるんでしょうか?教えていただければ幸いです
再撮生きです。
汚してすみません。
エディタが ATOM か VS CODE かの違いですね(たぶん)
すみませんでした
with open('ファイルパス名')as f:でファイルの書き込み、読み込み、追記ができる。パイソン内でファイルを作れるのでできることが多くなる。m(__)m
VBAある程度書けるようになったのでPython学習を始めたものですが、readlineメソッドの引数にアンダースコア部分に入れるはずの変数を入れなくてもいいんですか?勝手にreadlineメソッドがrangeを理解して順番に1行ずつ返してくれるという認識であってますか?
5:36時点です!
一般的には
for i in range(3)
とか書くやつだと思うんですが i はこのとき利用しないので
捨て変数として_を使う人が多いみたいです
Python runtime state: core initialized
LookupError: unknown encoding: windows-31j
Current thread 0x00002f6c (most recent call first):
こんなエラーが出てきてしまいました。一度実行できたんですが、エンコーディング的なのを触ってからエラーが出てくるようになった気がします。お願いします。
ご質問、ありがとうございます!
コーディングにエディターを使っていますか?
エディターでファイルエンコーディングを指定してる部分を変更してしまうと、「unknown encoding」のエラーが出力されることがあります。ファイルエンコーディングがUTF-8になっているか確認してみるのが良いかと思います!
ご参考 ▶︎ network-beginner.xyz/lookuperror-unknown-encoding-windows-31j_error
@@pythonvtuber9917
返信ありがとうございます。無事実行できました。ありがとうございます!!
質問です。
txt2に「あああ」「いいい」「ううう」と同じように書いても「???」が3行出てしまいます。
アルファベットなら反映されるんですが…
ご質問ありがとうございます!
ファイルを開く文字コードが合っていないのかもしれません😵
ファイルを開いているソフトの文字コードが何に設定されているか分かりますか?
例えば、もしもshift-jisだったら、ファイルopenの引数を以下のように指定してください!
=====================
with open('aaa.txt', 'w',encoding='shift_jis') as f:
f.write('あああ
いいい
ううう')
ご返信ありがとうございます。
でも駄目でした❎
同じく???が3行出てしまいます…
7か月後に勉強しているものです。おそらくUTF_8なのだろうと思います。
自分も同じところで躓いたので。文字コードの確認はメモ帳を開いて名前を付けて保存で確認できました。
encoding='UTF_8'
質問があります。ファイルを読み込もうとすると毎回エラーが生じてしまい躓いています。作ったテキストファイルが使えなくなる原因が分かりません。テキストファイルがpythonと同じ階層にある状態というのが分からないのですが、デスクトップ画面から作成したテキストファイルでは同じ階層にはならないのですか?
デスクトップ画面から作成したテキストファイルは「デスクトップ」と言うフォルダに自動で入るため、Pythonのファイルが置いてある場所と同じ階層にないと思われます😵
以下の3つのどれかを実施してみて、テキストファイルが読み込めるか試してみてください!
① Pythonファイルをデスクトップ上に移動して、Pythonを実行する
② テキストファイルをPythonファイルが置いてあるフォルダと同じフォルダに入れてPythonを実行する
③ with open('xxxxxx') as f: ← このファイル名を指定するところに、テキストファイルのフルパスを指定する。
フルパスは以下の記事を参照に、調べてみてださい!
Windowsのファイルパスの調べ方▶︎ www.resume-next.com/easy_way_to_copy_file_paths/
Macのファイルパスの調べ方 ▶︎ www.too.com/support/faq/mac/finder_os/24480.html
もしも、①〜③を実施してもうまく読めこめなかったら、出力されたエラーやコードの詳細を教えていただけたら、もっとお力になれるかもです!
@@pythonvtuber9917
①の通りにしただけではうまくいか無かったんですが、with open の()の引数にencoding = "utf-8_sig"を付け加えたらうまく成功しました。
第一引数には全体パス、第二引数に"r"にするだけではうまくいかなかったり、pythonファイルとテキストファイルが同じ階層に無いだけでエラーも起きていたので、1日中考えてましたが、なんとかなりました。
Windows10を使っていたので、何かしら文字コードに問題があったようです。
動画を参考にできて良かったです。ありがとうございました。
読み込めてよかったです!!!
テキストファイルがBOM付き UTF-8 だったんですね!
ファイル操作は色々と落とし穴があって悩んじゃいますよね😵
また、何かあれば動画コメント欄からご質問いただけたらと思います!
CSVについての動画ってアップされてますでしょうか。。?
CSVだけのはないですね!
データを読み込んで、行こどにカンマ区切りで名前とそれに続く数字3つをリスト化しました。そして、その3つの数字の合計と平均を各行ごとに末尾に追記して、新しいファイルにデータを書き出すプログラムを作りたいのですが、計算する際にリストの名前が計算に代入されてエラーが出たのは理解できるのですが、数字以外を除いて代入するにはどうすれば良いのでしょうか?
やりたいことの全体像が、文章からよく読み取れないのですが「数字以外を除く」という処理はif文の条件にtype関数を使って、変数の型を判別したら良いのではないでしょうか?😉 (整数の場合は ▶︎ if type(x) == int:)
@@pythonvtuber9917 数字以外を除くプログラムのif文にtype関数を使う事で調べることができるのですね!調べたなかに含まれる文字を取得してif以降のプログラムで処理…
学校で触れられなかったのにテストに出ました汗満点取れなくて悔しかったです笑でも周りに数人解けた人がいたので、刺激を受けたので頑張ります!返信有り難う御座います!
サプーさんの動画沢山参考にします!!
お世話になります。質問があります。特定の行を指定してtxtファイルに書き換え出力するにはどうすればよいでしょうか。例えば一行目がaaa,二行目がbbb,三行目がcccを二行目だけdddにして、上からaaa,ddd,cccとして保存する場合です。宜しくお願い致します。
ご質問有難うございます!
行数指定の書き込みは用意されていないので、readlines()でリストで読み込んで、変更したい行の要素の値を変更して、writelines()で書き込みする、っていうのが良いかな!と思います😉
返信ありがとう。おかげさまでなんとか書き出しできたのですが、行間が一行空白になるところとそうでないところが混在して書き出されてしまうのですが、対処方法は何かありますか?
Excelに入っている値をテキストファイルに持ってくることは可能ですか?
OpenPyXLといったExcelファイルを読み込むライブラリと一緒に使うとできますね!OpenPyXLについての解説動画も出しているので、よければみてみてください。
ruclips.net/video/Pgfw9DimHoQ/видео.html
anacondaのSpyder(IPython)でUTF-8ファイルを使用する時は
with open('~.txt', 'w', encoding='utf-8') as f:
のようにencodingを使用します(自分メモ)
print(sys.getdefaultencoding()) はutf-8と出るけど、指定無しだとShiftJISで読み書きしようとしてしまうのはなぜでしょうか?
ご質問ありがとうございます!
openで開かれる時のエンコーディングですが、「sys.getdefaultencoding()」ではなくて「locale.getpreferredencoding()」で出力されるかと思います😉
こちらご参考 ▶︎ docs.python.org/ja/3/library/functions.html#open
test.txtファイルが読み込めません。
他のコメント欄の方でも同じ方がいらっしゃるようですが、よく理解できませんでした...
読み込めない原因と解決策はありますか?
ご質問ありがとうございます!
読み込めない時、どのようなエラーが出てきますか?
また、エラーの解消方法に関する動画を出しているので、ぜひそちらも合わせてご覧ください😉
▶︎ ruclips.net/video/n-CEndcgAFY/видео.html
@@pythonvtuber9917
エラーメッセージです。
例外が発生しました: FileNotFoundError
[Errno 2] No such file or directory: 'test.txt'
File "C:\Users\AKUREI\Documents\SapuPython\Lesson12\Lesson12_01.py", line 1, in
with open("test.txt") as f:
ググったりして解決策など試しましたがどうもうまく動作してくれません。
「text.txtっていうファイルがないよ!」って書いてありますね😉
Lesson12_01.pyっていうPythonファイルと同じフォルダの中にtext.txt という開きたいファイルはありますか?
@@pythonvtuber9917
同じフォルダ内にvscodeから作成しました。
少し手が離れてしまったので夜にでも再度挑戦してみようと思います。
ファイル名が間違っていないかも含めて、今一度ファイルをご確認ください😉
with ブロック内で宣言してデータ保存したローカル変数をwith ブロック外で使用できるのはなぜでしょうか?
ファイルの管理がわからないです。動画にしていただけると助かります
ご要望ありがとうございます!検討してみますね!
test2.txtのファイルが文字化けしてしまいます、他の方のコメントにあった方法試しても解消されません