我想从Twitter保存一些数据,我想使用二维数组来保存第一行中的所有主题标签,并使用动态列保存第二行中的所有外部网址。
我实现了这个:
hashtag_extLink = 2 * [[]]
...
...
if field == "hashtag":
hashtag_extLink[0].append(x)
elif field == "ext_link":
hashtag_extlink[1].append(y)
else:
pass
但是,当我使用以下语句打印hashtag_extLink时:
for row in range(len(hashtag_extLink)):
print("Row %d" % row)
for col in range(len(hashtag_extLink[row])):
print(hashtag_extLink[row][col], end='')
print("")
我明白了:
Row 0
xy
Row 1
xy
这是append()
函数为两行添加值。
我该怎么办?我要使用Numpy吗?
提前谢谢。
答案 0 :(得分:1)
像这样定义一个2D数组:x = 2 * [[]]
将相同的列表放在容器列表中的两个位置,就像你的情况一样。
尝试定义像x = [[],[]]
>>> x = [[],[]]
>>> x[0].append(1)
>>> x
[[1], []]
答案 1 :(得分:0)
如果您知道尺寸,
ar = []
for i in range(5):
ar.append([])
for j in range(2):
ar[i].append(1)
答案 2 :(得分:0)
您可以定义动态2D数组并用0个值初始化
def initialize_array(rows, cols): l1 = [[0 for i in range(cols)] for j in range (rows)] print (l1)