簡體   English   中英

Python中的2D數組/列表

[英]2D array/list in python

我試圖將csv讀入2D數組,但似乎卡住了。 以下代碼的任何幫助將不勝感激。

import sys, csv

rowColumn = [] 
rowColumn.append([])
rowColumn.append([])

with open('filelocation.csv', "r+")  as inputFile:
    fieldnames = ['col1','col2','col3','col4','col5','col6','col7','col8',]
    reader = csv.reader(inputFile)
        i1=-1
        i2=0
        for row in reader:
            i1=i1+1
            print(row)
            for item in row:
                #store item in 2D list/array
                rowColumn[i1][i2].append(item)#error occurs here
                i2=i1+1

工作代碼:

import sys, csv

rowColumn = [] 
rowColumn.append([])
rowColumn.append([])

with open('filelocation.csv', "r+")  as inputFile:
    reader = csv.reader(inputFile)
    i1=-1
    for row in reader:
        i1+=1
        i2=0
        for item in row:
            #store item in 2D list/array
            rowColumn[i1][i2].append(item)
            i2+=1

看來我的i2變量位於錯誤的位置。

為了易於使用,很難擊敗大熊貓:

import pandas as pd

# Read CSV file into pandas dataframe df
df = pd.read_csv('filelocation.csv', index_col=False)

# Convert dataframe to python list via a numpy array
python_list = df.values.tolist()

您的問題出在最后一行:您使列號取決於行號。 嘗試這樣的事情:

    for row in reader:
        i1 += 1
        print(row)
        i2 = 0
        for item in row:
            #store item in 2D list/array
            rowColumn[i1][i2].append(item)
            i2 += 1

如果您以前沒看過,

我+ = 1

相當於

我=我+1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM