age = 20
if age >= 6 and age < 18:
print 'teenager'
elif age >= 18:
print 'adult'
else:
print 'kid'
if age >= 6 and age < 18:
print 'teenager'
elif age >= 18:
print 'adult'
else:
print 'kid'
2015-06-07
L = ['Adam', 'Lisa', 'Bart']
L[0]='Bart'
L[-1]='Adam'
print L
L[0]='Bart'
L[-1]='Adam'
print L
2015-06-07
d = {
'Adam': 95,
'Lisa': 85,
'Bart': 59
}
for name in d:
print name,d[name]
这样也可以,只是没有冒号,可以以字符串加上,但是格式不符合这里的
'Adam': 95,
'Lisa': 85,
'Bart': 59
}
for name in d:
print name,d[name]
这样也可以,只是没有冒号,可以以字符串加上,但是格式不符合这里的
2015-06-07
print [A+B+A for A in '123456789' for B in '0123456789']
2015-06-07
print r'''"To be, or not to be": that is the question.
Whether it's nobler in the mind to suffer.'''
Whether it's nobler in the mind to suffer.'''
2015-06-07
总结如下:
1、要想写出编程,必须亲自玩汉诺塔的游戏,至少玩到7层以上!
2、要自己尝试去写,不用直接看答案,思考过程比答案更痛苦,也更有趣!
3、关键之处在于递归里的第一个move(n-1,a,c,b)。意思是把 (n-1) 个圆盘移动到 b。这个move的动作之后需要最下面一个盘移动a-c,就是print a-->c。
4、之后再把b上面的盘移动回到c,就是move(n-1,b,a,c)
1、要想写出编程,必须亲自玩汉诺塔的游戏,至少玩到7层以上!
2、要自己尝试去写,不用直接看答案,思考过程比答案更痛苦,也更有趣!
3、关键之处在于递归里的第一个move(n-1,a,c,b)。意思是把 (n-1) 个圆盘移动到 b。这个move的动作之后需要最下面一个盘移动a-c,就是print a-->c。
4、之后再把b上面的盘移动回到c,就是move(n-1,b,a,c)
2015-06-07
思考一周,亲自玩汉诺塔的游戏,玩到10层(用半个小时才做完,正确步骤是1023步,我用了1110步,错了87步)。对游戏有实际操作理解后,才进行编程。 当时觉得难点如下: 1、如何在移动的时候,还打印出正确的步骤。 2、开始觉得n是偶数和奇数,第一步移到的塔不一样。(偶数是b塔,奇数是c塔)。觉得是否要添加一个判断语句。 3、递归函数里,要写几个特例,开始我写到了n==1,n==2,n==3的三种情况。觉得应该分不了这么多。 4、递归函数里,要递归几次(就是要用到move几次?)。我是只用了一次,就是最后一个move(n-1,b,a,c)写对了。所以显示出来的步数少了,比如n=4时,才11步。
2015-06-07
for key,value in d.items():
print key,':',value
#结果为#lisa : 85
#adam : 95
#bart : 59
并不是初始化序列,因为dic是无序的
可以把key和value分开成list,然后zip(key,value)
keys = ["adam", "lisa", "bart"]
values = ["95", "85", "59"]
for key,value in zip(keys, values):
print key,":",value
print key,':',value
#结果为#lisa : 85
#adam : 95
#bart : 59
并不是初始化序列,因为dic是无序的
可以把key和value分开成list,然后zip(key,value)
keys = ["adam", "lisa", "bart"]
values = ["95", "85", "59"]
for key,value in zip(keys, values):
print key,":",value
2015-06-07