Notebook
これは日々の作業を通して学んだことや毎日の生活で気づいたことをを記録しておく備忘録である。
HTML ファイル生成日時: 2025/07/08 18:41:52.167 (台灣標準時)
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/07/08 18:41:52.167 (Taiwan Standard Time)
Frequently accessed files
- Computer___Python/20220518_0.html
- 12958 page views
- title: Matplotlib で作る図の縦横比
- Computer___Network/20230726_00.html
- 7458 page views
- title: git の SSL certificate problem の解決方法
- Misc___Taiwan/20240207_00.html
- 6132 page views
- title: 台灣から台灣の外に EMS で荷物を発送する方法
- Computer___Network/20230516_00.html
- 5039 page views
- title: OpenVPN 2.6 を使い VPN Gate に接続するときの注意点
- Computer___FreeBSD/20220621_0.html
- 3524 page views
- title: FreeBSD での X.org の設定の仕方
- Computer___Network/20240130_00.html
- 3029 page views
- title: Google Colaboratory で Python 3.12 を使う方法
- Computer___Network/20230508_00.html
- 2921 page views
- title: git push するときにパスワードの入力を省略する方法
- Computer___Python/20220715_0.html
- 2825 page views
- title: SciPy による最小二乗法
- Computer___TeX/20231107_00.html
- 2653 page views
- title: LaTeX での counter の利用方法について
- Computer___NetBSD/20230119_00.html
- 2466 page views
- title: NetBSD でバイナリーパッケージを利用する方法
- Food___Taiwan/20220429_0.html
- 2228 page views
- title: 「楊滇風」の滇味辣炒豬
- Misc___Japan/20240610_00.html
- 2121 page views
- title: NHK ラジオの「聞き逃し」の変更点 (2024 年 06 月)
- Computer___Network/20220413_1.html
- 2120 page views
- title: HTML 文書の中の一部の文字を点滅させる方法
- Computer___Network/20240416_00.html
- 2111 page views
- title: git push としたときの error: RPC failed
- Computer___Python/20220410_0.html
- 2087 page views
- title: Pint モジュールを使った単位を含む数値の取り扱い
- Computer___Python/20221013_0.html
- 2032 page views
- title: Matplotlib での作図において順番を決めて点や線を描画する方法
- Computer___TeX/20230726_01.html
- 1985 page views
- title: Beamer の Metropolis テーマで block の色を変える方法
- Computer___Python/20240101_00.html
- 1940 page views
- title: Matplotlib の 3D plot においての注意点
- Computer___Debian/20210223_1.html
- 1907 page views
- title: Debian で autofs を使い自動で NFS マウントする方法
- Computer___NetBSD/20220817_3.html
- 1897 page views
- title: JupyterLab のインストール直後に行うべきこと
- Misc___Taiwan/20240819_00.html
- 1876 page views
- title: 住所から台灣の郵便番号を調べる方法
- Computer___NetBSD/20220818_1.html
- 1850 page views
- title: Emacs の markdown-mode について
- Computer___NetBSD/20240101_02.html
- 1798 page views
- title: ffmpeg を使って動画に音声を追加する方法
- Computer___NetBSD/20220428_0.html
- 1774 page views
- title: Beamer で verbatim 環境を使う方法
- Computer___Python/20210124_0.html
- 1770 page views
- title: Python での argparse を使ったコマンドライン引数の取り扱い方法
- Science___Math/20220420_0.html
- 1732 page views
- title: ラプラシアンの三次元極座標表示
- Computer___TeX/20240414_00.html
- 1661 page views
- title: LuaTeX での fontspec を使ったフォントの設定の方法
- Computer___TeX/20230503_00.html
- 1644 page views
- title: LaTeX CJK で日本語や中国語を取り扱うための準備について
- Computer___NetBSD/20240101_03.html
- 1632 page views
- title: ffmpeg で動画に metadata を追加する方法
- Science___Astronomy/20220503_0.html
- 1545 page views
- title: Lane-Emden 方程式を数値的に解く
HTML file generated by Kinoshita Daisuke.