PythonのStringIOの使い方【初心者向け】

初心者向けにPythonのStringIOの使い方について解説しています。これは文字列をファイルのように読み書きすることができるライブラリです。StringIOの使い方、基本の書き方について学びましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

PythonのStringIOの使い方について解説します。

Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事をまずご覧ください。

 

なお本記事は、TechAcademyのPythonオンライン講座の内容をもとにしています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

StringIOの使い方について詳しく説明していくね!

大石ゆかり

お願いします!

 

StringIOとは

StringIOを使うと文字列をファイルのように扱えます。

具体的には、文字列に対しread, write, printといったファイル操作を、StringIOを介して行えます。

詳細は公式の文書を参照してください。

 

StringIOの使い方

ioモジュールをインポートし、StringIOインスタンスを作成します。

StringIOはコンストラクタで初期値を指定できます。

import io
s = io.StringIO('foo')

 

[PR] Pythonで挫折しない学習方法を動画で公開中

実際に書いてみよう

サンプルコード

import io

with io.StringIO() as s:
    s.write('1行目')
    print('2行目', file=s, end='')
    contents = s.getvalue()
    print(contents)

 

実行結果

1行目
2行目

 

解説

1行目でioモジュールをインポートしています。

3行目でStringIOインスタンスを作成しました。
with-as構文を用い、使用後に自動的にクローズするようにしました。

4行目でwrite関数を用い、StringIOに文字列を書き込みました。

5行目でprint関数を用い、同様にStringIOに文字列を書き込みました。

6行目でStringIOから文字列を読み取りました。

 

監修してくれたメンター

橋本紘希

システムインテグレータ企業勤務のシステムエンジニア。

開発実績: Javaプログラムを用いた業務用Webアプリケーションや、基幹システム用バッチアプリケーションなどの設計構築試験。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

オンラインのプログラミングスクールTechAcademyではPythonを使って機械学習の基礎を学ぶPythonオンライン講座を開催しています。

初心者向けの書籍を使って人工知能(AI)や機械学習について学ぶことができます。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間で習得することが可能です。

また、現役エンジニアから学べる無料のプログラミング体験会も実施しているので、ぜひ参加してみてください。