shivency

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

重复,我猜其实就是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、

  好多图像题- -

posted on 2013-06-29 16:58  shivency  阅读(251)  评论(0编辑  收藏  举报