如何从一列中读取一组字符,即使它们的长度不同?Python 3

如何从一列中读取一组字符,即使它们的长度不同?Python 3,python,Python,我的名字是莱恩,我刚刚开始学习Python,我玩得很开心:D.我刚刚在YouTube上完成了一门课程,目前正在做我的一个项目。目前,我正在尝试将列从犯罪数据csv中分离为它们自己的字符串 with open('C:/Users/aferdous/python-works/data-set/crime-data/crime_data-windows-1000.csv') as crime_data: for crime in crime_data: id = crime_data.read

我的名字是莱恩,我刚刚开始学习Python,我玩得很开心:D.我刚刚在YouTube上完成了一门课程,目前正在做我的一个项目。目前,我正在尝试将列从犯罪数据csv中分离为它们自己的字符串

with open('C:/Users/aferdous/python-works/data-set/crime-data/crime_data-windows-1000.csv') as crime_data:
for crime in crime_data:
    id = crime_data.readline(8) #<- prints the first x char of each line
    print(id)
    case_number = crime_data.readline(8) #<- prints the first x char of each line
    print(case_number)
    date = crime_data.readline(22) #<- prints the first x char of each line
    print(date)
    block = crime_data.readline(25) #<- prints the first x char of each line
    print(block)
这对于前两列很容易,因为它们的字符长度都相同。但是对于“block”,列中的单词有不同的长度,所以我不知道如何从每行的每个单词中提取正确数量的字符。总共有1000行。
-谢谢

我假设您的csv格式是value1、value2、value3,如果是这种情况,您可以使用名为split的python函数。示例:

...
columns = crime_data.split(",")
print(columns[0]) #print column 1
print(columns[2]) #print column 2
...
但对于python中的read csv,您可以在google中搜索更好的选项,我发现了一个示例:


如果您试图解析CSV文件,请使用。这将使您的生活更加轻松。同时,对于crime_数据中的crimeê,您已经在通过循环每次读取文件中的一行,然后您忽略而不是尝试逐个字符读取另一行。即使你能做到这一点,你最终也会跳过每一行。你通常想做的是解析你已经拥有的犯罪线索。但是,如果你只是使用csv.reader,你甚至不必这样做;您只需将每一行分解为列列表。