|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 catalpa-bungei 于 2023-4-7 12:19 编辑
一个csv文件中的数据
Make Variant Length (ft) Geographic Region Country/Region/State
Beneteau 423 43 Alabama
Hunter 41 DS 40 California
Hunter 44 DS 44 California
Jeanneau Sun Odyssey 49 DS49 California
Beneteau First 44.7 44 California
如何读成一个列表呢?并且最好字符串就是字符串,数字就是数字,空格就是空格,比如:
[['Make','Variant'...........],
['Beneteau',423,43,'','Alabama'],
........
........]]
要将CSV文件读取为列表,可以使用Python的内置csv模块。以下是一个示例:
import csv
filename = 'your_file.csv' # 请将文件名替换为实际文件名
with open(filename, mode='r', encoding='utf-8') as csvfile:
csv_reader = csv.reader(csvfile)
data = [row for row in csv_reader]
print(data)
这个示例将CSV文件读取为一个二维列表。请注意,我们需要将your_file.csv替换为实际的文件名。这个示例会将所有的数据都读取为字符串。为了将数字转换为数字类型,可以稍微修改代码:
import csv
def convert_to_number(value):
try:
return int(value)
except ValueError:
try:
return float(value)
except ValueError:
return value
filename = 'your_file.csv' # 请将文件名替换为实际文件名
with open(filename, mode='r', encoding='utf-8') as csvfile:
csv_reader = csv.reader(csvfile)
data = []
for row in csv_reader:
data.append([convert_to_number(cell) for cell in row])
print(data)
这个版本的代码会尝试将每个单元格的值转换为int或float,如果不成功,则保留为字符串。这样,您将得到一个列表,其中字符串是字符串,数字是数字。
|
|