为了账号安全,请及时绑定邮箱和手机立即绑定

使用 Python 读取 CSV 文件的值

使用 Python 读取 CSV 文件的值

九州编程 2021-06-30 13:39:34
我在从下面的 CSV 文件中获取行值时遇到了一些问题CSVminzoom, maxzoom0,55,1010,18我的代码:i = 0for line in open("C:/Marine/lookup/distinct_lookup_scales.csv"):    i = i + 1    if (i > 1):  #Skip header        print("Line: " + line)        #csv_row = line.split(',')        minzoom = str(line[0])        maxzoom = str(line[2])        print("Minzoom:" + minzoom)        print("Maxzoom:" + maxzoom)        readShpFile(minzoom, maxzoom)minzoom和maxzoom 的返回值是0   55   11   ,我曾使用行拆分但又恢复尝试从行中获取项目不确定这是否是最好的方法
查看完整描述

2 回答

?
弑天下

TA贡献1818条经验 获得超8个赞

这不是你应该如何阅读 csv 文件。查看csv 模块文档。


一个例子:


import csv


with open('C:/Marine/lookup/distinct_lookup_scales.csv', 'r') as csvfile:

    csvreader = csv.reader(csvfile)

    csvreader.next() #skip header

    for row in csvreader:

        minzoom = int(row[0])

        maxzoom = int(row[1])

        print('minzoom : {}'.format(minzoom))

        print('maxzoom : {}'.format(maxzoom))

您还可以使用 DictReader,它将使用您的标题行来生成字典。


import csv


with open('C:/Marine/lookup/distinct_lookup_scales.csv', 'r') as csvfile:

    csvreader = csv.DictReader(csvfile)

    for row in csvreader:

        minzoom = int(row['minzoom'])

        maxzoom = int(row['maxzoom'])

        print('minzoom : {}'.format(minzoom))

        print('maxzoom : {}'.format(maxzoom))


查看完整回答
反对 回复 2021-07-06
?
www说

TA贡献1775条经验 获得超8个赞

你可以试试 numpy.genfromtxt,比如:


import numpy as np


data = np.genfromtxt("C:/Marine/lookup/distinct_lookup_scales.csv", delimiter = ",",

                     skip_header = 1)

minzooms = data[:,0]

maxzooms = data[:,1]


查看完整回答
反对 回复 2021-07-06
  • 2 回答
  • 0 关注
  • 142 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号