Notebook

これは日々の作業を通して学んだことや毎日の生活で気づいたことをを記録しておく備忘録である。

HTML ファイル生成日時: 2024/11/21 17:40:55.112 (台灣標準時)

Python の pathlib モジュールの使い方

ディレクトリの中にあるファイルなどを調べる方法

ディレクトリの中にあるファイルなどを調べる方法は以下の通り。

#!/usr/pkg/bin/python3.9

# importing pathlib module
import pathlib

# reading directory
dir_pkgsrc  = '/usr/pkgsrc'
path_pkgsrc = pathlib.Path (dir_pkgsrc)
obj_pkgsrc  = path_pkgsrc.iterdir ()

# printing directory contents
print ("directory contents of %s" % dir_pkgsrc)
for obj in sorted (obj_pkgsrc):
    print (' ', obj)

実行すると以下のようになる。
% ./test_pathlib_0.py | head
directory contents of /usr/pkgsrc
  /usr/pkgsrc/CVS
  /usr/pkgsrc/Makefile
  /usr/pkgsrc/README.md
  /usr/pkgsrc/_NetBSD-pkgdb
  /usr/pkgsrc/archivers
  /usr/pkgsrc/audio
  /usr/pkgsrc/benchmarks
  /usr/pkgsrc/biology
  /usr/pkgsrc/bootstrap

ディレクトリを作成する方法

ディレクトリを作成する方法は以下の通り。

#!/usr/pkg/bin/python3.9

# importing pathlib module
import pathlib

# making a directory
dir_pathlib  = '/tmp/test_pathlib'
path_pathlib = pathlib.Path (dir_pathlib)
path_pathlib.mkdir (exist_ok=True)

実行すると以下のようになる。
% ls /tmp/test_pathlib
ls: /tmp/test_pathlib: No such file or directory
% ./test_pathlib_1.py
% ls /tmp/test_pathlib
% ls -l /tmp/ | grep pathlib
drwxr-xr-x  2 daisuke  wheel         512 Jan 26 00:58 test_pathlib/

ファイルを作成する方法

ファイルを書き出す方法は以下の通り。

#!/usr/pkg/bin/python3.9

# importing pathlib module
import pathlib

# writing a file
dir_pathlib = '/tmp/test_pathlib'
file_README = dir_pathlib + '/' + 'README'
path_README = pathlib.Path (file_README)
with path_README.open (mode='w') as fh:
    fh.write ("This is a README file.\n")

実行してみる。
% ls -l /tmp/test_pathlib/
% ./test_pathlib_2.py
% ls -l /tmp/test_pathlib/
total 1
-rw-r--r--  1 daisuke  wheel  23 Jan 26 01:00 README
% cat /tmp/test_pathlib/README 
This is a README file.

ファイルを読む方法

ファイルを読む方法は以下の通り。

#!/usr/pkg/bin/python3.9

# importing pathlib module
import pathlib

# reading a file
dir_pathlib = '/tmp/test_pathlib'
file_README = dir_pathlib + '/' + 'README'
path_README = pathlib.Path (file_README)
with path_README.open () as fh:
    for line in fh:
        print (line)

実行すると以下の通り。
% ./test_pathlib_3.py 
This is a README file.


Frequently accessed files

  1. Computer___Python/20220518_0.html
  2. Computer___Network/20230726_00.html
  3. Misc___Taiwan/20240207_00.html
  4. Computer___Network/20230516_00.html
  5. Computer___FreeBSD/20220621_0.html
  6. Computer___Python/20220715_0.html
  7. Computer___Network/20230508_00.html
  8. Food___Taiwan/20220429_0.html
  9. Computer___NetBSD/20220817_3.html
  10. Computer___Python/20220410_0.html
  11. Computer___Network/20240416_00.html
  12. Computer___Network/20240130_00.html
  13. Computer___Debian/20210223_1.html
  14. Computer___NetBSD/20230119_00.html
  15. Computer___Python/20210124_0.html
  16. Computer___Python/20221013_0.html
  17. Computer___NetBSD/20220818_1.html
  18. Computer___NetBSD/20220428_0.html
  19. Science___Math/20220420_0.html
  20. Computer___NetBSD/20240101_02.html
  21. Computer___NetBSD/20220808_0.html
  22. Computer___TeX/20230503_00.html
  23. Computer___NetBSD/20230515_00.html
  24. Science___Astronomy/20220503_0.html
  25. Computer___NetBSD/20210127_0.html
  26. Computer___Python/20240101_00.html
  27. Computer___Network/20220413_1.html
  28. Computer___Python/20220816_1.html
  29. Computer___NetBSD/20210204_0.html
  30. Travel___Taiwan/20220809_2.html


HTML file generated by Kinoshita Daisuke.