LoginSignup
1
1

More than 3 years have passed since last update.

超かどうかは別としてpythonかなり初級編。ファイル操作が嫌いすぎる件。

Posted at

記事の目的

pythonに限らないが、ファイル操作が嫌いすぎるため、ファイル操作を少しやってみる。
ここでのファイル操作は、ファイルを開く、書く、閉じる、のレベル。

とりあえず、
第三者がみて意味のある記事になるには、少し、時間がかかると思う。

ファイル操作をやってみる。

step1

以下のようなコードを実行した。

file_step1.py
f1 = open('testfile1.txt')
f1.write(123)
f1.write(456)
f1.close


以下のように、叱られた。

C:\_temp_work\fileA>python file_step1.py
Traceback (most recent call last):
  File "file_step1.py", line 2, in <module>
    f1.write(123)
TypeError: write() argument must be str, not int

C:\_temp_work\fileA>

上記は、余計な誤りだが、誤りを修正。

file_step1a.py
f1 = open('testfile1.txt')
f1.write('123')
f1.write('456')
f1.close

また、叱られた。

C:\_temp_work\fileA>python file_step1a.py
Traceback (most recent call last):
  File "file_step1a.py", line 2, in <module>
    f1.write('123')
io.UnsupportedOperation: not writable

C:\_temp_work\fileA>


修正した。

file_step1b.py
f1 = open('testfile1.txt', mode='w')
f1.write('123')
f1.write('456')
f1.close

今度は、問題なし。

C:\_temp_work\fileA>python file_step1b.py

C:\_temp_work\fileA>

testfile1.txt
ができて。

その中身は、

testfile1.txt
123456

問題なし。

では、バイナリに興味があるので、
mode='wb'としてみた。

file_step2.py
f1 = open('testfile1.txt', mode='wb')
f1.write('123')
f1.write('456')
f1.close


また、叱られた。

C:\_temp_work\fileA>python file_step2.py
Traceback (most recent call last):
  File "file_step2.py", line 2, in <module>
    f1.write('123')
TypeError: a bytes-like object is required, not 'str'

C:\_temp_work\fileA>

今後

つづく。

1
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1