重复,我猜其实就是loop,所以这章大致讲的,其实就是循环
1、
1 value = [1,2,3,4] 2 print value #[1, 2, 3, 4] 3 4 for v in value: 5 v = 2 * v 6 7 print value #[1, 2, 3, 4]
所以,在循环中对值进行翻倍只会影响v所引用的那个元素,并不会改变原始列表。
2、关于range()
- 默认情况下,range()是通过不断递增1的方式来生成数字的,如range(1,101),便是指1~100这100个数;
- 我们可以通过设置第三个参数来改变默认步长,如range(2050, 2000, -4)。从中我们可以读出两点:步长可以为负;参数要符合逻辑。 否则,range()的结果将为空。
3、关于enumerate()
1 #example a 2 for x in enumerate('[1,2,3]'): 3 print x 4 5 #result: 6 # (0, '[') 7 # (1, '1') 8 # (2, ',') 9 # (3, '2') 10 # (4, ',') 11 # (5, '3') 12 # (6, ']') 13 14 15 #example b 16 values = [1, 2, 3] 17 for (i, v) in enumerate(values): 18 values[i] = 2 * v 19 20 print values 21 # [2, 4, 6]
可以通过example a猜到enumerate()这个函数的作用吗?这就是在example b中将values列表中元素翻倍的办法。
4、随机数【乱入=-=】
操作列表的时候经常需要一个里面有数值的列表,比如比较小白鼠每天的体重,便需要一个rat_list[]. 而我又懒得自己输数据,便喜欢用随机数模块的赋值。
贴一下,以免以后忘记:
1 import random 2 rat_1 = [] 3 rat_2 = [] 4 5 for i in range(0,10): 6 rat_1.append(random.randint(0, 1000)) 7 rat_2.append(random.randint(0, 1000))
嗯,列表的method要用.append().
还有几个常用的:
1 import random 2 3 a = random.randrange(0, 1001) 4 b = random.randint(0, 1001) 5 c = random.random()
5、奇葩的直角三角形
要求输出
T
TT
TTT
TTTT
TTTTT
TTTTTT
TTTTTTT
源码
for i in range(0,7): print ' ' * (6 - i), 'T' * (i + 1)
但是最左边有一个空格,死活缩不进去- -
6、
好多图像题- -