列表列表成 table (Row, Column)
List of lists into table (Row, Column)
我的灵感来自环形图案钻石。图案菱形被替换为类似此代码的列表列表。实际上,我已经打印了 实际结果 没有查看行和列。预期结果看起来与实际结果相似。 Dummy Coords (dum_coords) 表示数据将放入table(行,列)。
如何规则更改值 None 或列表中小于 3 的值。我可以将值替换为新列表。哪个更好用列表的值或索引。
求指教
python,图案菱形,列表列表
l = 4
dum_coords = [None, [[1,2,3],6,7,8], [9,[1,2,3],11,12], [[1,2,3],14,15,16]]
for i in range(l):
print("row:{}, {}".format(i, dumy_coords[i]))
实际结果:
row:0>> [None]
row:1>> [[1,2,3],6,7,8]
row:2>> [9,[1,2,3],11,12]
row:3>> [[1,2,3],14,15,16]
预期结果:
row:0>> [[None],[None],[None],[None]]
row:1>> [[None],[1,2,3],6,7]
row:2>> [9,[1,2,3],11,[1,2,3]]
row:3>> [[1,2,3],14,15,0]
更新问题:
@Shishir Naresha 向我推荐了他的代码。因为结果与预期结果相似。但是,需要的不止于此。我可以替换值 None 或不替换 None.
这是我的代码并添加了@Shishir Naresha 的代码
dum_fish_space = [None]*5
dum_fish_pop = [None]*3
dum_fish_preying = [{"current":random.uniform(0,1)*2}]
dum_fish_following = [{"current":random.uniform(0,1)*1,"target":random.uniform(0,1)}]
dum_fish_swarming = [{"current":random.uniform(0,1)}]
dum_fish_randoming = [{"current":random.uniform(0,1)*3}]
dum_fish_battle = []
idxrange = []
new_idxrange = []
for i in range(len(dum_fish_pop)):
temp = random.randrange(len(dum_fish_space))
idxrange.append(random.randrange(len(dum_fish_space)))
if temp is not idxrange:
new_idxrange.append(temp)
l = 4
dumy_coords = [None, [[1, 2, 3], 6, 7], [9, [1, 2, 3], 11, 12], [[1, 2, 3], 14, 15, 16]]
for i in range(l):
if dumy_coords[i] is None:
print("row:{}, {}".format(i, [None] * l))
else:
if len(dumy_coords[i]) < l:
dif = l - len(dumy_coords[i])
print("row:{}, {}".format(i, [None] * dif + dumy_coords[i]))
else:
print("row:{}, {}".format(i, dumy_coords[i]))
我认为 table 中的一个值会根据列表列表的索引而改变,我希望结果会一样
更改值前的预期结果:
row:0>> [[None],[None],[None],[None]]
row:1>> [[None],[1,2,3],6,7]
row:2>> [9,[1,2,3],11,[1,2,3]]
row:3>> [[1,2,3],14,15,0]
更改值后的预期结果:
row:0>> [[1,2,3],[1,2,3],[None],[None]]
row:1>> [[None],[None],6,7]
row:2>> [9,[None],11,[1,2,3]]
row:3>> [[1,2,3],14,15,0]
试试下面的代码。我希望这会有所帮助。
l = 4
dumy_coords = [None, [[1,2,3],6,7], [9,[1,2,3],11,12], [[1,2,3],14,15,16]]
for i in range(l):
if dumy_coords[i] is None:
print("row:{}, {}".format(i, [None]*l))
else:
if len(dumy_coords[i]) < l:
dif = l-len(dumy_coords[i])
print("row:{}, {}".format(i, [None]*dif+dumy_coords[i]))
else:
print("row:{}, {}".format(i, dumy_coords[i]))
输出将如下所示:
row:0, [None, None, None, None]
row:1, [None, [1, 2, 3], 6, 7]
row:2, [9, [1, 2, 3], 11, 12]
row:3, [[1, 2, 3], 14, 15, 16]
我的灵感来自环形图案钻石。图案菱形被替换为类似此代码的列表列表。实际上,我已经打印了 实际结果 没有查看行和列。预期结果看起来与实际结果相似。 Dummy Coords (dum_coords) 表示数据将放入table(行,列)。
如何规则更改值 None 或列表中小于 3 的值。我可以将值替换为新列表。哪个更好用列表的值或索引。
求指教
python,图案菱形,列表列表
l = 4
dum_coords = [None, [[1,2,3],6,7,8], [9,[1,2,3],11,12], [[1,2,3],14,15,16]]
for i in range(l):
print("row:{}, {}".format(i, dumy_coords[i]))
实际结果:
row:0>> [None]
row:1>> [[1,2,3],6,7,8]
row:2>> [9,[1,2,3],11,12]
row:3>> [[1,2,3],14,15,16]
预期结果:
row:0>> [[None],[None],[None],[None]]
row:1>> [[None],[1,2,3],6,7]
row:2>> [9,[1,2,3],11,[1,2,3]]
row:3>> [[1,2,3],14,15,0]
更新问题:
@Shishir Naresha 向我推荐了他的代码。因为结果与预期结果相似。但是,需要的不止于此。我可以替换值 None 或不替换 None.
这是我的代码并添加了@Shishir Naresha 的代码
dum_fish_space = [None]*5
dum_fish_pop = [None]*3
dum_fish_preying = [{"current":random.uniform(0,1)*2}]
dum_fish_following = [{"current":random.uniform(0,1)*1,"target":random.uniform(0,1)}]
dum_fish_swarming = [{"current":random.uniform(0,1)}]
dum_fish_randoming = [{"current":random.uniform(0,1)*3}]
dum_fish_battle = []
idxrange = []
new_idxrange = []
for i in range(len(dum_fish_pop)):
temp = random.randrange(len(dum_fish_space))
idxrange.append(random.randrange(len(dum_fish_space)))
if temp is not idxrange:
new_idxrange.append(temp)
l = 4
dumy_coords = [None, [[1, 2, 3], 6, 7], [9, [1, 2, 3], 11, 12], [[1, 2, 3], 14, 15, 16]]
for i in range(l):
if dumy_coords[i] is None:
print("row:{}, {}".format(i, [None] * l))
else:
if len(dumy_coords[i]) < l:
dif = l - len(dumy_coords[i])
print("row:{}, {}".format(i, [None] * dif + dumy_coords[i]))
else:
print("row:{}, {}".format(i, dumy_coords[i]))
我认为 table 中的一个值会根据列表列表的索引而改变,我希望结果会一样
更改值前的预期结果:
row:0>> [[None],[None],[None],[None]]
row:1>> [[None],[1,2,3],6,7]
row:2>> [9,[1,2,3],11,[1,2,3]]
row:3>> [[1,2,3],14,15,0]
更改值后的预期结果:
row:0>> [[1,2,3],[1,2,3],[None],[None]]
row:1>> [[None],[None],6,7]
row:2>> [9,[None],11,[1,2,3]]
row:3>> [[1,2,3],14,15,0]
试试下面的代码。我希望这会有所帮助。
l = 4
dumy_coords = [None, [[1,2,3],6,7], [9,[1,2,3],11,12], [[1,2,3],14,15,16]]
for i in range(l):
if dumy_coords[i] is None:
print("row:{}, {}".format(i, [None]*l))
else:
if len(dumy_coords[i]) < l:
dif = l-len(dumy_coords[i])
print("row:{}, {}".format(i, [None]*dif+dumy_coords[i]))
else:
print("row:{}, {}".format(i, dumy_coords[i]))
输出将如下所示:
row:0, [None, None, None, None]
row:1, [None, [1, 2, 3], 6, 7]
row:2, [9, [1, 2, 3], 11, 12]
row:3, [[1, 2, 3], 14, 15, 16]