说我有两个清单:
a=[1,2,3,4,5]
b=[5,4,3,2,1]
Run Code Online (Sandbox Code Playgroud)
我想创建第三个,它将是两个线性和:
c[i]==a[i]+b[i]
c==[6,6,6,6,6]
Run Code Online (Sandbox Code Playgroud)
是否可以使用'for'构造函数?喜欢:
c = [aa+bb for aa in a for bb in b]
Run Code Online (Sandbox Code Playgroud)
(这显然不是我想要的)
从未见过这样的事情.简单的循环:
t_end = 100.0
t_step= 0.1
time = 0
while time<=t_end:
time+=t_step
print time
Run Code Online (Sandbox Code Playgroud)
最后3个印刷值:
...
99.9
100.0
100.1
Run Code Online (Sandbox Code Playgroud)
看起来对我来说.
现在,我将t_step更改为0.01:
t_end = 100.0
t_step= 0.01
time = 0
while time<=t_end:
time+=t_step
print time
Run Code Online (Sandbox Code Playgroud)
最后3个印刷值:
...
99.98
99.99
100.0
Run Code Online (Sandbox Code Playgroud)
问题:为什么在time = t_end = 100.0时它不会进入最后一个循环?
什么是替代解决方案?
我知道要在Python中生成一个列表,你可以使用类似的东西:
l = [i**2 for i in range(5)]
Run Code Online (Sandbox Code Playgroud)
而不是使用for循环像:
l = []
for i in range(5):
l.append(i**5)
Run Code Online (Sandbox Code Playgroud)
有没有办法做2D列表而不使用像这样的for循环:
map = [[]]
for x in range(10):
row = []
for y in range(10):
row.append((x+y)**2)
map.append(row)
Run Code Online (Sandbox Code Playgroud)
在Python中是否还有其他替代方法来表示2D数组?
我想在一个文件中保留两个类,我希望其中一个包含另一个文件的实例.所以在我的头文件中我有这样的东西:
class Box{
Item a,b,c;
/*
...
*/
}
class Item{
/*
...
*/
}
Run Code Online (Sandbox Code Playgroud)
显然编译器说它不知道什么Item.如何让它看到Item类?