カテゴリ: Python 更新日: 2025/12/13

Pythonの文字列から一部を抽出する方法!スライスを使った基本的な切り出し方

Pythonの文字列から一部を抽出する方法!スライスを使った基本的な切り出し方
Pythonの文字列から一部を抽出する方法!スライスを使った基本的な切り出し方

先生と生徒の会話形式で理解しよう

生徒

「先生、Pythonで文字列の一部だけを取り出したいときってどうすればいいんですか?」

先生

「それならスライスという仕組みを使えば、好きな場所から文字列を切り出すことができますよ!」

生徒

「スライスってなんか難しそうですね…」

先生

「大丈夫!例を使ってわかりやすく説明します。一緒にやってみましょう!」

1. スライスとは?

1. スライスとは?
1. スライスとは?

スライスとは、Pythonで文字列(ストリング)の中から「必要な部分だけ」を切り出す仕組みです。たとえば、長い文章の中から先頭の数文字だけ取り出したいときや、途中の文字だけ取り出したいときに役立ちます。

基本の書き方はとてもシンプルで、次のように書きます。

文字列[開始位置:終了位置]

このとき「開始位置から終了位置の1つ手前まで」が取り出されます。数字で位置を指定するだけなので、プログラミング初心者でも覚えやすいのがポイントです。

例えば、次の例では文字列の先頭から6文字だけを取り出しています。


text = "Pythonプログラミング"
print(text[0:6])

Python

このように、インデックス(位置)を指定するだけで、文字列の一部を簡単に抽出できます。文章の前半だけ取り出すときや、ファイル名から特定の部分を抜き出したいときなど、いろいろな場面で使える便利なテクニックです。

2. 開始位置だけ指定する

2. 開始位置だけ指定する
2. 開始位置だけ指定する

終了位置を省略すると、最後まで切り出します。


text = "Python入門"
print(text[6:])

入門

3. 終了位置だけ指定する

3. 終了位置だけ指定する
3. 終了位置だけ指定する

開始位置を省略すると、最初から指定した位置まで切り出します。


text = "Python入門"
print(text[:6])

Python

4. 最後の文字だけ取り出す

4. 最後の文字だけ取り出す
4. 最後の文字だけ取り出す

Pythonでは、マイナスのインデックスを使うと後ろから数えることができます。


text = "Python"
print(text[-1])

n

これは「最後の文字」という意味です。

5. ステップを指定する

5. ステップを指定する
5. ステップを指定する

文字列[開始:終了:ステップ]とすると、何文字ごとに取り出すかも指定できます。


text = "abcdef"
print(text[::2])

ace

2文字ごとに取り出しています。

6. 応用:文字列の一部を取り出して再利用

6. 応用:文字列の一部を取り出して再利用
6. 応用:文字列の一部を取り出して再利用

スライスを使えば、必要な部分だけ取り出して再利用できます。


email = "info@example.com"
domain = email[email.index("@")+1:]
print(f"ドメインは {domain} です")

ドメインは example.com です

7. よくあるエラーに注意

7. よくあるエラーに注意
7. よくあるエラーに注意

存在しないインデックスを指定しても、Pythonはエラーを出しませんが、空文字列になります。


text = "Python"
print(text[100:])


範囲外のインデックスを使ってもエラーにならない点がPythonの特徴です。

まとめ

まとめ
まとめ

Pythonのスライス機能を活用することで、文字列の一部を自在に取り出す方法が身につきました。特に「開始位置:終了位置」というシンプルな書き方を覚えるだけで、テキスト処理の幅がぐんと広がります。今回紹介したように、最初から取り出す・最後まで取り出す・末尾の文字を抜き出す・2文字ごとに抽出するなど、さまざまなパターンに対応できるのがスライスの魅力です。

さらに、メールアドレスからドメイン部分だけを抜き出したり、文字列を加工して別の処理に使う場面でも、スライスはとても役立ちます。Pythonでは「文字列はリストのように扱える」という考え方が基本にあるため、数字の位置指定で切り出せる仕組みはとても直感的です。

また、インデックスの範囲外を指定してもエラーにならず空文字列が返るという特徴も、Python初心者にとっては安心できるポイントです。とはいえ、思わぬバグにつながることもあるため、想定外の入力にも対応できるようにすることが大切です。

最後に、スライスを正しく使いこなすためには「インデックスは0から始まる」「終了位置はその一歩手前まで」というPython独自のルールを忘れないようにしましょう。Pythonの文字列操作では頻繁に登場する技術なので、まずは基本形を何度も試して、自分の手になじませることが最初の一歩です。

先生と生徒の振り返り会話

生徒

「スライスって最初は難しそうだったけど、ちゃんと仕組みを知れば思ったより簡単でした!」

先生

「そうですね。特に開始位置と終了位置の使い方がポイントでしたね。」

生徒

「メールアドレスからドメインだけを取り出すのも、index()とスライスを組み合わせればできるなんて便利です!」

先生

「実際のデータ処理でもよく使われるテクニックですよ。応用することで、URLやファイルパスの整理にも活かせます。」

生徒

「あ、あとスライスって範囲外でもエラーにならないのはPythonならではって感じがしました。便利だけど油断しないようにします!」

先生

「えらいですね!その意識があれば、Pythonでの文字列処理がもっとスムーズになりますよ。次はリストのスライスも試してみましょうか。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Pythonで文字列から特定の部分だけを取り出すにはどうすればいいですか?

Pythonではスライス構文を使うことで、文字列から任意の範囲を簡単に取り出すことができます。
カテゴリの一覧へ
新着記事
New1
Django
Djangoプロジェクトのディレクトリ構造を完全解説!初心者でも迷わないフォルダの見方
New2
Flask
Flask×Flask-SocketIOでチャットアプリを作る流れを初心者向けにやさしく解説
New3
Flask
Flaskアプリの作り方を基礎から学ぼう!初心者が覚えるべき開発の流れとは?
New4
Flask
Flask-WTFでファイルアップロードフォームを完全ガイド!初心者でもわかる画像やPDFのアップロード方法
人気記事
No.1
Java&Spring記事人気No1
Django
Django環境構築の全手順を完全解説!初心者でも迷わないPython・Djangoセットアップガイド
No.2
Java&Spring記事人気No2
Flask
Flask-Loginでユーザー認証を完全ガイド!初心者でもわかるログイン処理の作り方
No.3
Java&Spring記事人気No3
Python
Pythonの文字列を1文字ずつ処理する方法!for文やlist化の活用例
No.4
Java&Spring記事人気No4
Python
PythonでHello Worldを表示するには?初心者向けに最初の1行を実行してみよう
No.5
Java&Spring記事人気No5
Python
Pythonで定数を定義する方法!変更されない変数の書き方と命名ルールを初心者向けに解説
No.6
Java&Spring記事人気No6
Python
Pythonでリストを文字列に変換する方法を完全ガイド!初心者でもわかるjoinの使い方
No.7
Java&Spring記事人気No7
Flask
FlaskアプリをNginx + Gunicornで本番運用する方法!初心者でもわかるデプロイ構成の基本
No.8
Java&Spring記事人気No8
Python
Pythonのmatch文(パターンマッチング)とは?switch文の代替としての使い方をやさしく解説