Pythonプログラミングの基礎
みんな、Pythonって知ってる?この言語は、プログラミング初心者からプロまで、幅広い人に人気があるんやで。何でか言うたら、シンプルでわかりやすいからや。まるで、関西のたこ焼きみたいに、みんなに愛される味やな。
Pythonを使うと、データ分析やWebアプリ開発、自動化なんかも簡単にできるんや。例えば、たこ焼きの生地を作るときに、いろんな具材を入れるやろ?Pythonも同じで、色んな機能を組み合わせて、自分だけのプログラムを作れるんや。これからの講座では、文字列操作を中心に、Pythonの基本を一緒に学んでいくで!楽しみにしててな!
文字列の作成と基本操作
さて、まずは文字列の作成と基本操作について見ていこうか!文字列っていうのは、テキストデータのことや。Pythonでは、文字列を作るのにクォーテーションを使うんやけど、シングルクォーテーション(’)とダブルクォーテーション(”)のどっちでもええで。
クォーテーションの使い方
- シングルクォーテーションで囲んだ文字列
- ダブルクォーテーションで囲んだ文字列
例えば、こんな感じやで!
text1 = 'こんにちは!'
text2 = "Python楽しいな!"
エスケープ文字
でも、もし文字列の中にクォーテーションを入れたいときは、エスケープ文字を使うんや。エスケープ文字はバックスラッシュ(\)やで。例えば、こんな風に使うねん。
text3 = '彼は「Python最高!」って言うたんや。'
text4 = "彼は'Python最高!'って言うたんや。"
文字列の結合
次に、文字列を結合する方法や。これは「+」を使うだけやで。例えば、二つの文字列をくっつけるには、こんな感じや。
greeting = 'こんにちは!'
name = 'タロウ'
message = greeting + ' ' + name + 'さん!'
これで、message
には「こんにちは! タロウさん!」っていう文字列が入るんや。
さあ、これで文字列の基本的な作り方と操作が分かったかな?次は、インデックスとスライシングを見ていくで!楽しみにしててな!
文字列のインデックスとスライシング
さて、次は文字列のインデックスとスライシングについて学んでいくで!文字列は、一文字ずつに番号が付いてるんや。これをインデックスって呼ぶんやけど、最初の文字は0から始まるんやで。ちょっとややこしいけど、覚えておいてな。
インデックスの使い方
例えば、次の文字列を見てみてな。
text = "Python"
この場合、各文字のインデックスはこんな感じや:
- P → 0
- y → 1
- t → 2
- h → 3
- o → 4
- n → 5
インデックスを使って特定の文字を取り出すには、角括弧([])を使うんや。例えば、’P’を取り出したいときはこうするで。
first_character = text[0] # 'P'が取れる
ネガティブインデックス
それから、ネガティブインデックスも使えるんや。これやと、文字列の後ろから数えられるんや。-1が最後の文字を指すから、これも覚えといてな。
last_character = text[-1] # 'n'が取れる
スライシング
次にスライシングについてや。スライシングを使うと、部分的な文字列を取り出すことができるんや。書き方はこうや:
substring = text[start:end]
ここで、start
は取り出したい部分の最初のインデックス、end
は取り出さない部分のインデックスや。例えば、’Py’を取り出したいときはこうするで。
substring = text[0:2] # 'Py'が取れる
また、end
を省略すると、最後まで取り出せるで。
substring = text[2:] # 'thon'が取れる
さあ、これでインデックスとスライシングの使い方がわかったかな?次は、文字列メソッドについて学んでいくで!楽しみにしててな!
文字列メソッド:大文字小文字変換、検索、置換、分割
さてさて、次は文字列メソッドについて見ていくで!Pythonには、文字列を操作するための便利なメソッドがたくさんあるんや。これを使いこなせるようになったら、文字列操作がもっと楽になるで。さっそく、いくつかのメソッドを見ていこう!
大文字小文字変換
まずは、大文字と小文字の変換や。upper()
メソッドを使うと、文字列を全部大文字にできるで。また、lower()
メソッドを使うと、全部小文字にできるんや。
text = "Python Programming"
uppercase_text = text.upper() # 'PYTHON PROGRAMMING'
lowercase_text = text.lower() # 'python programming'
検索
次に、文字列の中に特定の文字や部分文字列が含まれているかを調べるメソッドや。find()
メソッドを使うと、指定した文字列が最初に出てくるインデックスを返してくれるで。見つからんかったら-1が返ってくるから注意してな。
text = "Pythonは楽しい言語や!"
index = text.find("楽しい") # 6が返ってくる
置換
続いて、文字列の一部を置き換えるメソッドや。replace()
メソッドを使うと、指定した部分を新しい文字列に置き換えられるんや。
text = "Pythonは楽しい言語や!"
new_text = text.replace("楽しい", "最高の") # 'Pythonは最高の言語や!'
分割
最後に、文字列を分割するメソッドや。split()
メソッドを使うと、指定した区切り文字で文字列を分けてリストにできるで。デフォルトではスペースで分割されるんや。
text = "Python Java C++"
languages = text.split() # ['Python', 'Java', 'C++']
また、特定の文字で分割したいときは、引数にその文字を指定するだけや。
text = "リンゴ,バナナ,ミカン"
fruits = text.split(",") # ['リンゴ', 'バナナ', 'ミカン']
さあ、これで文字列メソッドの基本がわかったかな?次は、文字列のフォーマットについて学んでいくで!楽しみにしててな!
文字列のフォーマット:%演算子、format()メソッド、f文字列
さてさて、次は文字列のフォーマットについてや!文字列を整形する方法はいくつかあって、%演算子、format()
メソッド、そしてf文字列の3つを紹介するで。これを使うと、変数の値を文字列に埋め込むのが簡単になるんや!
%演算子
まずは、%演算子を使ったフォーマットや。これを使うと、文字列の中に変数を埋め込むことができるんや。具体的には、%
の後に変数の型を指定して使うねん。
name = "タロウ"
age = 25
message = "私の名前は%sで、年齢は%d歳です。" % (name, age)
こうすると、message
には「私の名前はタロウで、年齢は25歳です。」って入るんや。
format()メソッド
次に、format()
メソッドを使ったフォーマットや。これを使うと、もっと柔軟に文字列を整形できるで。
name = "タロウ"
age = 25
message = "私の名前は{}で、年齢は{}歳です。".format(name, age)
この方法でも、message
には同じ内容が入るんや。また、{}
の中にインデックスを入れることもできるし、キーワードを使うこともできるで。
message = "私の名前は{0}で、年齢は{1}歳です。".format(name, age)
# または
message = "私の名前は{name}で、年齢は{age}歳です。".format(name=name, age=age)
f文字列
最後に、f文字列や。これはPython 3.6から使えるようになった新しい方法で、めっちゃ便利やで!文字列の前にf
を付けるだけで、波括弧({})の中に変数を直接書けるんや。
name = "タロウ"
age = 25
message = f"私の名前は{name}で、年齢は{age}歳です。"
これでも、message
には同じ内容が入るんやけど、コードがすっきりして見やすいよな。
さあ、これで文字列のフォーマットについても理解できたかな?次は、正規表現の基本について学んでいくで!楽しみにしててな!
正規表現の基本:re モジュールの使用
さてさて、最後に正規表現について学んでいくで!正規表現は、特定のパターンにマッチする文字列を検索したり、操作したりするための強力なツールや。Pythonでは、re
モジュールを使って正規表現を扱うことができるんや。さっそく見ていこう!
reモジュールのインポート
まずは、re
モジュールをインポートするところから始めるで。
import re
パターンのマッチ
次に、文字列の中に特定のパターンが含まれているかどうかを調べる方法や。search()
メソッドを使うと、指定したパターンが最初に見つかった位置を返してくれるで。見つからんかったらNone
が返るから、注意してな。
text = "今日は晴れです"
pattern = "晴れ"
match = re.search(pattern, text)
if match:
print("マッチしました!")
else:
print("マッチしませんでした。")
パターンの置換
次に、正規表現を使って文字列の一部を置き換える方法や。sub()
メソッドを使うと、指定したパターンにマッチする部分を新しい文字列に置き換えられるで。
text = "私は猫が好きです。猫はかわいい。"
new_text = re.sub("猫", "犬", text) # '私は犬が好きです。犬はかわいい。'
パターンの分割
それから、文字列を特定のパターンで分割することもできるんや。split()
メソッドを使うと、指定したパターンで文字列を分けてリストにできるで。
text = "りんご,バナナ;ぶどう,みかん"
fruits = re.split("[,;]", text) # ['りんご', 'バナナ', 'ぶどう', 'みかん']
便利なパターン
正規表現では、特定のパターンを表すためにいくつかの記号が使えるで。例えば:
\d
:数字(0-9)\w
:単語の文字(アルファベットや数字)\s
:空白文字(スペースやタブ)
これらを使うと、より複雑なパターンを表現できるんや。
text = "電話番号は 090-1234-5678 です"
pattern = r"\d{3}-\d{4}-\d{4}" # 電話番号のパターン
match = re.search(pattern, text)
if match:
print("電話番号:", match.group())
さあ、これで正規表現の基本がわかったかな?正規表現はちょっと難しいけど、使いこなせるようになれば、文字列操作がもっと楽になるで!これでPythonの文字列操作の章は終わりや。次からも楽しみにしててな!
フォーマットの達人になろう!【%演算子、format()メソッド、f文字列の使い方と具体例】