Notebook
これは日々の作業を通して学んだことや毎日の生活で気づいたことをを記録しておく備忘録である。
HTML ファイル生成日時: 2025/01/14 09:02:48.430 (台灣標準時)
Python で gzip で圧縮されたファイルを読む方法 (2023 年 07 月中旬)
Python で gzip で圧縮されたファイルを読む方法は以下の通りでござる。こ
こでは、 MPCORB.DAT.gz というファイルを読み込むことを考えるでござる。
<import gzip> して、 <gzip.open (filename, 'r')> とした後、
gzip.open が返すファイルハンドルを使ってファイルの内容を読めばよいよう
でござる。
#!/usr/pkg/bin/python3.10
#
# Time-stamp: <2023/07/17 13:31:53 (CST) daisuke>
#
# importing gzip module
import gzip
# file to read
file_gzipped = 'MPCORB.DAT.gz'
# opening file
with gzip.open (file_gzipped, 'r') as fh_gz:
# reading file
data = fh_gz.readlines ()
# printing first 20 lines
for line_rawbytes in data[:20]:
# conversion from raw bytes into UTF-8 string
line_utf8 = line_rawbytes.decode ()
# printing a line
print (f'{line_utf8}', end='')
注意が必要だった点は、 gzip.open を使うと、読み込んだファイルの内容は
raw bytes になることでござった。 .decode () を使って UTF-8 に変換して
あげないといけないでござる。
実行結果は以下の通りでござる。
% ./read_gz_file.py
MINOR PLANET CENTER ORBIT DATABASE (MPCORB)
This file contains published orbital elements for all numbered and unnumbered
multi-opposition minor planets for which it is possible to make reasonable
predictions. It also includes published elements for recent one-opposition
minor planets and is intended to be complete through the last issued Daily
Orbit Update MPEC. As such it is intended to be of interest primarily
to astrometric observers.
Software programs may include this datafile amongst their datasets, as
long as this header is included (it is acceptable if it is contained
in a file separate from the actual data) and that proper attribution
to the Minor Planet Center is given. Credit to the individual orbit
computers is implicit by the inclusion of a reference and the name of
the orbit computer on each orbit record. Information on how to obtain
updated copies of the datafile must also be included.
The work of the individual astrometric observers, without whom none of
the work of the Minor Planet Center would be possible, is gratefully
acknowledged. Credit to the individual observers is implicit by the
- About this article:
- author: daisuke
- file: 20230717_01.html
- category: Computer___Python
- title: Python で gzip で圧縮されたファイルを読む方法 (2023 年 07 月中旬)
- mode: public
- last modified: 2023/07/17 14:42:53 (Taiwan Standard Time)
- html generated: 2025/01/14 09:02:48.430 (Taiwan Standard Time)
Frequently accessed files
- Computer___Python/20220518_0.html
- 11905 page views
- title: Matplotlib で作る図の縦横比
- Computer___Network/20230726_00.html
- 5948 page views
- title: git の SSL certificate problem の解決方法
- Misc___Taiwan/20240207_00.html
- 4423 page views
- title: 台灣から台灣の外に EMS で荷物を発送する方法
- Computer___Network/20230516_00.html
- 3865 page views
- title: OpenVPN 2.6 を使い VPN Gate に接続するときの注意点
- Computer___FreeBSD/20220621_0.html
- 3006 page views
- title: FreeBSD での X.org の設定の仕方
- Computer___Python/20220715_0.html
- 2310 page views
- title: SciPy による最小二乗法
- Computer___Network/20230508_00.html
- 2283 page views
- title: git push するときにパスワードの入力を省略する方法
- Food___Taiwan/20220429_0.html
- 2009 page views
- title: 「楊滇風」の滇味辣炒豬
- Computer___Network/20240130_00.html
- 2000 page views
- title: Google Colaboratory で Python 3.12 を使う方法
- Computer___Network/20240416_00.html
- 1746 page views
- title: git push としたときの error: RPC failed
- Computer___Python/20220410_0.html
- 1728 page views
- title: Pint モジュールを使った単位を含む数値の取り扱い
- Computer___NetBSD/20220817_3.html
- 1717 page views
- title: JupyterLab のインストール直後に行うべきこと
- Computer___NetBSD/20230119_00.html
- 1691 page views
- title: NetBSD でバイナリーパッケージを利用する方法
- Computer___Python/20221013_0.html
- 1644 page views
- title: Matplotlib での作図において順番を決めて点や線を描画する方法
- Computer___Debian/20210223_1.html
- 1628 page views
- title: Debian で autofs を使い自動で NFS マウントする方法
- Computer___Python/20210124_0.html
- 1564 page views
- title: Python での argparse を使ったコマンドライン引数の取り扱い方法
- Computer___NetBSD/20220428_0.html
- 1521 page views
- title: Beamer で verbatim 環境を使う方法
- Computer___NetBSD/20220818_1.html
- 1521 page views
- title: Emacs の markdown-mode について
- Computer___TeX/20231107_00.html
- 1441 page views
- title: LaTeX での counter の利用方法について
- Computer___NetBSD/20240101_02.html
- 1438 page views
- title: ffmpeg を使って動画に音声を追加する方法
- Computer___Python/20240101_00.html
- 1396 page views
- title: Matplotlib の 3D plot においての注意点
- Science___Math/20220420_0.html
- 1367 page views
- title: ラプラシアンの三次元極座標表示
- Computer___Network/20220413_1.html
- 1356 page views
- title: HTML 文書の中の一部の文字を点滅させる方法
- Computer___TeX/20230503_00.html
- 1338 page views
- title: LaTeX CJK で日本語や中国語を取り扱うための準備について
- Computer___NetBSD/20220808_0.html
- 1319 page views
- title: 端末エミュレーターで使うフォントを指定する方法
- Computer___NetBSD/20230515_00.html
- 1308 page views
- title: pkgsrc の fetch phase で問題
- Science___Astronomy/20220503_0.html
- 1306 page views
- title: Lane-Emden 方程式を数値的に解く
- Computer___NetBSD/20210127_0.html
- 1277 page views
- title: NetBSD 上で Apache により HTTPS サーバを立ち上げる方法
- Misc___Japan/20240610_00.html
- 1217 page views
- title: NHK ラジオの「聞き逃し」の変更点 (2024 年 06 月)
- Computer___Python/20230717_01.html
- 1213 page views
- title: Python で gzip で圧縮されたファイルを読む方法 (2023 年 07 月中旬)
HTML file generated by Kinoshita Daisuke.