ホームページ  >  記事  >  バックエンド開発  >  PythonはCSVテキストの指定されたデータメソッドを取得します

PythonはCSVテキストの指定されたデータメソッドを取得します

php中世界最好的语言
php中世界最好的语言オリジナル
2018-04-09 10:46:157629ブラウズ

今回は、PythonでCSVテキストで指定されたデータを取得するメソッドと、PythonでCSVテキストで指定されたデータを取得するための注意事項を紹介します。実際のケースを見てみましょう。

csvは、Comma-Separated Valuesの略で、テキストファイル形式で保存された

のようなファイルです。内容は:

No.,Name,Age,Score
1,Apple,12,98
2,Ben,13,97
3,Celia,14,96
4,Dave,15,95
上記のcsvファイルが「A.csv」として保存されているとして、付属のcsvモジュールを使用して、Pythonを使ってExcelを操作するのと同じように列の1つ、つまりフィールドを抽出する方法を説明します。 Python では、これを実現するには 2 つの方法があります:

最初の方法

は、リーダー関数を使用して反復可能なオブジェクト (csv ファイルなど) を受け取り、ジェネレーターを返します。 CSV のコンテンツを解析できます。 たとえば、次のコードは CSV を読み取ることができます。 単位で、CSV のコンテンツ全体を読み取ることができます。

import csv
with open('A.csv','rb') as csvfile:
 reader = csv.reader(csvfile)
 rows= [row for row in reader]
print rows
を取得します。

[['No.', 'Name', 'Age', 'Score'],
['1', 'Apple', '12', '98'],
['2', 'Ben', '13', '97'],
['3', 'Celia', '14', '96'],
['4', 'Dave', '15', '95']]

列の 1 つを抽出するには、次を使用できます。コード:

import csv
with open('A.csv','rb') as csvfile:
 reader = csv.reader(csvfile)
 column = [row[2] for row in reader]
print column

取得:

['Age', '12', '13', '14', '15']

CSV から読み込まれるのは str 型であることに注意してください。この方法では、列番号を事前に知っている必要があります。たとえば、年齢は列 2 にあり、タイトルの「年齢」に基づいてクエリを実行することはできません。 この時点で 2 番目のメソッドを使用できます。

2 番目のメソッド は、リーダー関数に似た DictReader を使用します。これは、反復可能なオブジェクトを受け取り、ジェネレーターを返すことができますが、それぞれが返されます。セルは辞書の値内に配置され、この辞書のキーはセルのタイトル (つまり、列ヘッダー) です。次のコードで DictReader の構造を確認できます:

import csv
with open('A.csv','rb') as csvfile:
 reader = csv.DictReader(csvfile)
 column = [row for row in reader]
print column

Get:

[{'Age': '12', 'No.': '1', 'Score': '98', 'Name': 'Apple'},
{'Age': '13', 'No.': '2', 'Score': '97', 'Name': 'Ben'},
{'Age': '14', 'No.': '3', 'Score': '96', 'Name': 'Celia'},
{'Age': '15', 'No.': '4', 'Score': '95', 'Name': 'Dave'}]
DictReader を使用して CSV の特定の列を読み取りたい場合は、列タイトル クエリ:

import csv
with open('A.csv','rb') as csvfile:
 reader = csv.DictReader(csvfile)
 column = [row['Age'] for row in reader]
print column

を使用して get を実行できます。 :

['12', '13', '14', '15']

この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。

推奨書籍:

Python バッチで txt ファイルを DataFrame 形式に読み取る方法

Python がデータを更新するために mysql を呼び出す方法

以上がPythonはCSVテキストの指定されたデータメソッドを取得しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。