splitとは
Pythonには文字列を分割するためのsplitメソッドがあります。
splitメソッドは、指定した区切り文字で文字列を分割して、分割された文字列のリストを返します。
例えば、以下のコードを実行すると、カンマで区切られた文字列が分割され、分割された文字列のリストが返されます。
str = "apple,banana,orange"
fruits = str.split(",")
print(fruits)
出力結果は以下のようになります。
['apple', 'banana', 'orange']
int型への変換とその必要性
splitメソッドで分割された文字列は、文字列として扱われます。
しかし、数値計算をする際には、分割された文字列をint型(整数型)に変換する必要があります。
int型に変換することで、数値計算が可能になります。
以下のコードは、分割された文字列をint型に変換し、数値計算をする例です。
str = "1,2,3,4,5"
numbers = str.split(",")
sum = 0
for n in numbers:
sum += int(n)
print(sum)
出力結果は15になります。
splitメソッドでの文字列分割の基本
splitメソッドは、以下のように書式化されています。
str.split(sep=None, maxsplit=-1)
引数の説明は以下の通りです。
- sep: 分割する区切り文字。省略すると空白文字が区切り文字になります。
- maxsplit: 最大分割数。省略すると-1が設定され、分割される回数に制限がありません。
以下のコードは、sepを指定せずに空白文字で分割する例です。
str = "apple banana orange" fruits = str.split() print(fruits)
出力結果は以下のようになります。
['apple', 'banana', 'orange']
splitメソッドを使用して最初だけを分割する方法
splitメソッドを使用して、最初だけを分割するには、以下のように書きます。
str = "apple,banana,orange"
first_fruit, rest_fruits = str.split(",", 1)
print(first_fruit)
print(rest_fruits)
出力結果は以下のようになります。
apple banana,orange
2つ目の引数に1を指定することで、1回だけ分割を行うことができます。
分割された最初の要素はfirst_fruit変数に格納され、残りの要素はrest_fruits変数に格納されます。
int型に変換した後のデータの扱い方
int型に変換した後のデータは、数値として扱われます。
以下のコードは、int型に変換した後のデータを使って数値計算をする例です。
str = "1,2,3,4,5"
numbers = str.split(",")
sum = 0
for n in numbers:
sum += int(n)
average = sum / len(numbers)
print(average)
出力結果は以下のようになります。
3.0
splitメソッドとint型変換を活用した実践的な例
以下のコードは、CSVファイルからデータを読み込み、特定の列のデータをint型に変換して平均を求める例です。
import csv
# CSVファイルの読み込み
with open("data.csv", "r") as f:
reader = csv.reader(f)
# ヘッダー行を読み飛ばす
next(reader)
sum = 0
count = 0
# 特定の列のデータをint型に変換して平均を求める
for row in reader:
value = int(row[2])
sum += value
count += 1
average = sum / count
print(average)
まとめ
Pythonのsplitメソッドを使用することで、文字列を分割することができます。
int型に変換することで、数値計算が可能になります。
splitメソッドで最初だけを分割するには、2つ目の引数に1を指定します。
int型に変換した後のデータは、数値として扱われます。
splitメソッドとint型変換を活用することで、実践的なプログラムを作成することができます。



![[Python]RequestsとJSON(データ取得(get、post、dict)、保存)](https://machine-learning-skill-up.com/knowledge/wp-content/uploads/2023/11/1-170.jpg)

