【Pythonプログラミング入門】ファイルの操作を解説!〜VTuberと学習〜 【初心者向け】

Поделиться
HTML-код
  • Опубликовано: 15 янв 2025

Комментарии • 56

  • @holokirinukiyuriika
    @holokirinukiyuriika Год назад +6

    昨日出来なかったことが今日できました。
    独学はできなくて辛いこととできた達成感が味わえます。
    ありがとうサプーさん

  • @ハセオユウヤ
    @ハセオユウヤ 7 месяцев назад +1

    ありがとうございます!
    CSVファイル操作編も見てみたい!

  • @user-jm2vr9gn2l
    @user-jm2vr9gn2l 2 дня назад

    今回のはエクセルが一番使えそうな内容でした!

    • @pythonvtuber9917
      @pythonvtuber9917  День назад +1

      おー!!エクセル便利ですよね!!

  • @あきら-s2t
    @あきら-s2t 3 года назад +1

    分かりやすかったです!
    CSVで書き込み処理したいものがあるので、今度試してみます!

    • @pythonvtuber9917
      @pythonvtuber9917  3 года назад +1

      コメントありがとうございます😊
      プログラムからファイル書き込みができると、できることの幅が広がりますよね!CSV書き込み頑張ってください😉

  • @とりまおれ
    @とりまおれ Год назад +4

    書き込みの際や追記の際、VScode上では50音は文字化けされるのですが対処法はありますか?
    書き込みしたテキストファイルを開くとちゃんと書き込めているのですが...
    初心者で結っていることが分からなかったらすみません。

    • @wake767
      @wake767 Год назад +10

      同じところでつまずきました笑。VScodeで「ファイル」→「ユーザー設定」→「設定」→(上部にあるテキストボックスで「 Auto Guess Encoding」を検索)→「Files: Auto Guess Encoding」にチェックを入れる。VScodeで開いたテキストファイルを閉じて再度開くと文字化けが解消されました。

  • @伊計寛
    @伊計寛 2 года назад

    とてもわかりやすく、ご説明ありがとうございます。
    今のファイル操作は、TXTファイルのみでしたがいろんなファイル操作でも可能でしょうか?

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад

      TXT以外にもCSVやJSONファイルといったものもオープンできますね。
      バイナリーファイルは壊れることがあるのでバイナリーモードを指定する必要がありますね!

  • @masahiroisogami5722
    @masahiroisogami5722 Год назад

    すみません、追記です。
    OS は Windows11、 エディタは VSCode です

  • @TaroHiro
    @TaroHiro 2 года назад +2

    4:50付近でのfor文でfor _ in range(2): とありますが、for の後の _ (アンダーバー)はどういう意味合いがあるのでしょうか?
    素人質問ですんみません。コメントいただけると有り難いです。

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад +1

      ご質問ありがとうございます!
      使わない変数として「 _ 」を使っています。
      以下の動画の1:33あたりで詳しく解説しているので、よければ見てみてください!!
      ruclips.net/video/G6d_fAClSd4/видео.html

    • @TaroHiro
      @TaroHiro 2 года назад +1

      よくわかりました。有難うございました。

    • @yうy
      @yうy 10 месяцев назад

      @@pythonvtuber9917urlの動画も見たのですがなぜfor _in range(2)でaaa bbb cccという文字列に処理を行った時aaa aaaとならずaaa bbbとなるのでしょうか?そもそもreadlineのメソッドにそういう風に動くアルゴリズムが入ってるんでしょうか?教えていただければ幸いです

  • @masahiroisogami5722
    @masahiroisogami5722 Год назад

    再撮生きです。
    汚してすみません。
    エディタが ATOM か VS CODE かの違いですね(たぶん)
    すみませんでした

  • @minoritywater
    @minoritywater 2 месяца назад

    with open('ファイルパス名')as f:でファイルの書き込み、読み込み、追記ができる。パイソン内でファイルを作れるのでできることが多くなる。m(__)m

  • @yuu_koikoi
    @yuu_koikoi Год назад

    VBAある程度書けるようになったのでPython学習を始めたものですが、readlineメソッドの引数にアンダースコア部分に入れるはずの変数を入れなくてもいいんですか?勝手にreadlineメソッドがrangeを理解して順番に1行ずつ返してくれるという認識であってますか?

    • @yuu_koikoi
      @yuu_koikoi Год назад

      5:36時点です!

    • @ram610182773
      @ram610182773 Год назад +1

      一般的には
      for i in range(3)
      とか書くやつだと思うんですが i はこのとき利用しないので
      捨て変数として_を使う人が多いみたいです

  • @ガラスカラス-n1r
    @ガラスカラス-n1r 3 года назад +1

    Python runtime state: core initialized
    LookupError: unknown encoding: windows-31j
    Current thread 0x00002f6c (most recent call first):
    こんなエラーが出てきてしまいました。一度実行できたんですが、エンコーディング的なのを触ってからエラーが出てくるようになった気がします。お願いします。

    • @pythonvtuber9917
      @pythonvtuber9917  3 года назад

      ご質問、ありがとうございます!
      コーディングにエディターを使っていますか?
      エディターでファイルエンコーディングを指定してる部分を変更してしまうと、「unknown encoding」のエラーが出力されることがあります。ファイルエンコーディングがUTF-8になっているか確認してみるのが良いかと思います!
      ご参考 ▶︎ network-beginner.xyz/lookuperror-unknown-encoding-windows-31j_error

    • @ガラスカラス-n1r
      @ガラスカラス-n1r 3 года назад

      @@pythonvtuber9917
      返信ありがとうございます。無事実行できました。ありがとうございます!!

  • @春休み-o1h
    @春休み-o1h 3 года назад +2

    質問です。
    txt2に「あああ」「いいい」「ううう」と同じように書いても「???」が3行出てしまいます。
    アルファベットなら反映されるんですが…

    • @pythonvtuber9917
      @pythonvtuber9917  3 года назад +1

      ご質問ありがとうございます!
      ファイルを開く文字コードが合っていないのかもしれません😵
      ファイルを開いているソフトの文字コードが何に設定されているか分かりますか?
      例えば、もしもshift-jisだったら、ファイルopenの引数を以下のように指定してください!
      =====================
      with open('aaa.txt', 'w',encoding='shift_jis') as f:
      f.write('あああ
      いいい
      ううう')

    • @春休み-o1h
      @春休み-o1h 3 года назад

      ご返信ありがとうございます。
      でも駄目でした❎
      同じく???が3行出てしまいます…

    • @Towamaru
      @Towamaru 2 года назад +1

      7か月後に勉強しているものです。おそらくUTF_8なのだろうと思います。
      自分も同じところで躓いたので。文字コードの確認はメモ帳を開いて名前を付けて保存で確認できました。
      encoding='UTF_8'

  • @のりチャンネル-y1c
    @のりチャンネル-y1c 3 года назад +2

    質問があります。ファイルを読み込もうとすると毎回エラーが生じてしまい躓いています。作ったテキストファイルが使えなくなる原因が分かりません。テキストファイルがpythonと同じ階層にある状態というのが分からないのですが、デスクトップ画面から作成したテキストファイルでは同じ階層にはならないのですか?

    • @pythonvtuber9917
      @pythonvtuber9917  3 года назад +2

      デスクトップ画面から作成したテキストファイルは「デスクトップ」と言うフォルダに自動で入るため、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
      もしも、①〜③を実施してもうまく読めこめなかったら、出力されたエラーやコードの詳細を教えていただけたら、もっとお力になれるかもです!

    • @のりチャンネル-y1c
      @のりチャンネル-y1c 3 года назад +2

      @@pythonvtuber9917
      ①の通りにしただけではうまくいか無かったんですが、with open の()の引数にencoding = "utf-8_sig"を付け加えたらうまく成功しました。
      第一引数には全体パス、第二引数に"r"にするだけではうまくいかなかったり、pythonファイルとテキストファイルが同じ階層に無いだけでエラーも起きていたので、1日中考えてましたが、なんとかなりました。
      Windows10を使っていたので、何かしら文字コードに問題があったようです。
      動画を参考にできて良かったです。ありがとうございました。

    • @pythonvtuber9917
      @pythonvtuber9917  3 года назад +1

      読み込めてよかったです!!!
      テキストファイルがBOM付き UTF-8 だったんですね!
      ファイル操作は色々と落とし穴があって悩んじゃいますよね😵
      また、何かあれば動画コメント欄からご質問いただけたらと思います!

  • @yuyakara5
    @yuyakara5 2 года назад

    CSVについての動画ってアップされてますでしょうか。。?

  • @ああ-b3p5b
    @ああ-b3p5b 3 года назад +1

    データを読み込んで、行こどにカンマ区切りで名前とそれに続く数字3つをリスト化しました。そして、その3つの数字の合計と平均を各行ごとに末尾に追記して、新しいファイルにデータを書き出すプログラムを作りたいのですが、計算する際にリストの名前が計算に代入されてエラーが出たのは理解できるのですが、数字以外を除いて代入するにはどうすれば良いのでしょうか?

    • @pythonvtuber9917
      @pythonvtuber9917  3 года назад

      やりたいことの全体像が、文章からよく読み取れないのですが「数字以外を除く」という処理はif文の条件にtype関数を使って、変数の型を判別したら良いのではないでしょうか?😉 (整数の場合は ▶︎ if type(x) == int:)

    • @ああ-b3p5b
      @ああ-b3p5b 3 года назад

      @@pythonvtuber9917 数字以外を除くプログラムのif文にtype関数を使う事で調べることができるのですね!調べたなかに含まれる文字を取得してif以降のプログラムで処理…
      学校で触れられなかったのにテストに出ました汗満点取れなくて悔しかったです笑でも周りに数人解けた人がいたので、刺激を受けたので頑張ります!返信有り難う御座います!
      サプーさんの動画沢山参考にします!!

  • @devilmasami
    @devilmasami 2 года назад

    お世話になります。質問があります。特定の行を指定してtxtファイルに書き換え出力するにはどうすればよいでしょうか。例えば一行目がaaa,二行目がbbb,三行目がcccを二行目だけdddにして、上からaaa,ddd,cccとして保存する場合です。宜しくお願い致します。

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад

      ご質問有難うございます!
      行数指定の書き込みは用意されていないので、readlines()でリストで読み込んで、変更したい行の要素の値を変更して、writelines()で書き込みする、っていうのが良いかな!と思います😉

    • @devilmasami
      @devilmasami 2 года назад

      返信ありがとう。おかげさまでなんとか書き出しできたのですが、行間が一行空白になるところとそうでないところが混在して書き出されてしまうのですが、対処方法は何かありますか?

  • @るら-v4r
    @るら-v4r 2 года назад

    Excelに入っている値をテキストファイルに持ってくることは可能ですか?

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад

      OpenPyXLといったExcelファイルを読み込むライブラリと一緒に使うとできますね!OpenPyXLについての解説動画も出しているので、よければみてみてください。
      ruclips.net/video/Pgfw9DimHoQ/видео.html

  • @xiashan882
    @xiashan882 3 года назад +1

    anacondaのSpyder(IPython)でUTF-8ファイルを使用する時は
    with open('~.txt', 'w', encoding='utf-8') as f:
    のようにencodingを使用します(自分メモ)
    print(sys.getdefaultencoding()) はutf-8と出るけど、指定無しだとShiftJISで読み書きしようとしてしまうのはなぜでしょうか?

    • @pythonvtuber9917
      @pythonvtuber9917  3 года назад +1

      ご質問ありがとうございます!
      openで開かれる時のエンコーディングですが、「sys.getdefaultencoding()」ではなくて「locale.getpreferredencoding()」で出力されるかと思います😉
      こちらご参考 ▶︎ docs.python.org/ja/3/library/functions.html#open

  • @KURAMA-WDW
    @KURAMA-WDW 2 года назад

    test.txtファイルが読み込めません。
    他のコメント欄の方でも同じ方がいらっしゃるようですが、よく理解できませんでした...
    読み込めない原因と解決策はありますか?

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад +1

      ご質問ありがとうございます!
      読み込めない時、どのようなエラーが出てきますか?
      また、エラーの解消方法に関する動画を出しているので、ぜひそちらも合わせてご覧ください😉
      ▶︎ ruclips.net/video/n-CEndcgAFY/видео.html

    • @KURAMA-WDW
      @KURAMA-WDW 2 года назад

      @@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:
      ググったりして解決策など試しましたがどうもうまく動作してくれません。

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад +1

      「text.txtっていうファイルがないよ!」って書いてありますね😉
      Lesson12_01.pyっていうPythonファイルと同じフォルダの中にtext.txt という開きたいファイルはありますか?

    • @KURAMA-WDW
      @KURAMA-WDW 2 года назад

      @@pythonvtuber9917
      同じフォルダ内にvscodeから作成しました。
      少し手が離れてしまったので夜にでも再度挑戦してみようと思います。

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад +1

      ファイル名が間違っていないかも含めて、今一度ファイルをご確認ください😉

  • @keizam1
    @keizam1 Год назад +1

    with ブロック内で宣言してデータ保存したローカル変数をwith ブロック外で使用できるのはなぜでしょうか?

  • @ラフラフ-w5m
    @ラフラフ-w5m 2 года назад

    ファイルの管理がわからないです。動画にしていただけると助かります

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад

      ご要望ありがとうございます!検討してみますね!

  • @平川俊輝
    @平川俊輝 Месяц назад

    test2.txtのファイルが文字化けしてしまいます、他の方のコメントにあった方法試しても解消されません