s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])
for x in s:
print(x[0]+':'+str(x[1]))
for x in s:
print(x[0]+':'+str(x[1]))
2020-03-04
已采纳回答 / 精慕门9751036
'a=T'和'a=F'均为非空字符串,在python语言中 ,非空字符串都看成true。在计算'a=T'or'a=F'时,因为'a=T'是true,根据短路计算法则,若a or b中,a是true,则整个结果必定为true,因此返回a。所以,结果是'a=T'而不是'a=F'
2020-03-04
此题用两个变量两个for循环做就可以,不需要三个for循环:print [x+10*y+100*x for x in range(1,10) for y in range(0,10)]
2020-03-04
已采纳回答 / WE_Xing
就是把 a 柱子上面的 n 个盘子挪到 c 柱子上;现在用 b 这个中间柱子辅助我们 把 a 上的所有盘子给挪到 c 上如果就只有一个盘子就直接把它放到 c 上 : a -> c<...code...>
2020-03-03
参考里面为什么要return?
是为了打断递推,否则还会进行后面的代码,造成n<1的情况产生错误;
如果不用return,需要改写成if...else语句跳出循环,也可行
def move(n, a, b, c):
if n ==1:
print a, '-->', c
# return
else:
move(n-1, a, c, b)
print a, '-->', c
move(n-1, b, a, c)
move(4, 'A', 'B', 'C')
是为了打断递推,否则还会进行后面的代码,造成n<1的情况产生错误;
如果不用return,需要改写成if...else语句跳出循环,也可行
def move(n, a, b, c):
if n ==1:
print a, '-->', c
# return
else:
move(n-1, a, c, b)
print a, '-->', c
move(n-1, b, a, c)
move(4, 'A', 'B', 'C')
2020-03-03
for x in [ 1,2,3,4,5,6,7,8]:
for y in [2,3,4,5,6,7,8,9]:
#print x*10+y
if x<y:
print x*10+y
for y in [2,3,4,5,6,7,8,9]:
#print x*10+y
if x<y:
print x*10+y
2020-03-03