Python入门第11课——循环初步(只读课堂)

In [1]: #欢迎来到“只读课堂”!

 

In [2]: #下面我们来讲讲循环

 

In [3]: #循环有:for 循环 - 遍历循环, while 循环 - 条件循环

 

In [4]: costs = [3,4,12,23,43,100]

 

In [5]: #如果我要把这个清单整理好,要用“花费。。。花费。。。”打印出来:

 

In [6]: for cost in costs:

   ...: print('消费{}元'format(cost))

File "<ipython-input-6-c06e3a352828>", line 2

print('消费{}元'format(cost))

^

SyntaxError: invalid syntax

 

 

In [7]: #上面少了个点

 

In [8]: for cost in costs:

   ...: print('消费{}元'.format(cost))

   ...:

消费3元

消费4元

消费12元

消费23元

消费43元

消费100元

 

In [9]: #它就,可以很完整地展示

 

In [10]: #可以再规整点儿:

 

In [11]: for cost in costs:

    ...: print('消费{}元'.format(str(cost).center(10)))

    ...:

消费 3 元

消费 4 元

消费 12 元

消费 23 元

消费 43 元

消费 100 元

 

In [12]: #————————————————————————————————————————————————————————————————

 

In [13]: #生成一个长度为20地随即列表

 

In [14]: import random

 

In [15]: random.randint(1,10)

Out[15]: 8

In [16]: #它就会随即返回一个1-10之间随即地一个数

 

In [17]: random.randint(1,10)

Out[17]: 10

In [18]: #生成随即一个长度为20地列表:

 

In [19]: import random

    ...:

    ...: random_numbers = []

    ...: while len(random_numbers) <= 20:

    ...: random_numbers.append(random.randint(1,10))

    ...: print(random_numbers)

    ...:

[8, 10, 2, 3, 4, 5, 2, 3, 5, 1, 2, 9, 8, 3, 8, 1, 10, 2, 3, 4, 10]

 

In [20]: import random

    ...:

    ...: random_numbers = []

    ...: while len(random_numbers) <= 20:

    ...: random_numbers.append(random.randint(1,10))

    ...: print(random_numbers, len(random_numbers))

    ...:

[5, 9, 8, 8, 5, 5, 5, 1, 10, 3, 3, 1, 1, 6, 3, 5, 6, 9, 2, 2, 8] 21

 

In [21]: import random

    ...:

    ...: random_numbers = []

    ...: while len(random_numbers) < 20:

    ...: random_numbers.append(random.randint(1,10))

    ...: print(random_numbers, len(random_numbers))

    ...:

[10, 2, 8, 7, 1, 8, 4, 1, 4, 3, 8, 10, 5, 9, 4, 8, 10, 6, 7, 4] 20

 

In [22]: #如果那里是<=20,就会有个21,所以我们改成了<20 ↑

 

In [23]: #————————————————————————————————————————————————————————————————

 

In [24]: #编程建议:只要能使用for循环,就不要使用while循环。

 

In [25]: #一定要写import random

 

In [26]: import random

 

In [27]: #它跟模块是一样的,只要上面已经有导入过这个模块,下面就不用再写。

 

In [28]: random_numbers = []

 

In [29]: for i in range(20)

 

In [30]: File "<ipython-input-29-165a5f730222>", line 1

for i in range(20)

^

SyntaxError: invalid syntax

 

list(range(20))

File "<ipython-input-30-32922625a043>", line 1

File "<ipython-input-29-165a5f730222>", line 1

^

SyntaxError: invalid syntax

 

 

In [31]: #这样就不行,如果打印一行:

 

In [32]: random_numbers = []

 

In [33]: for i in range(20):

    ...: print(i)

    ...:

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

 

In [34]: #对于之前的例子也是一样的:

 

In [35]: random_numbers = []

    ...: for i in range(20)

    ...: random_numbers.append(random.randint(1,10))

    ...: print(random_numbers, len(random_numbers))

File "<ipython-input-35-65362b7b9dad>", line 2

for i in range(20)

^

SyntaxError: invalid syntax

 

 

In [35]:

 

In [36]: random_numbers = []

    ...: for i in range(20):

    ...: random_numbers.append(random.randint(1,10))

    ...: print(random_numbers, len(random_numbers))

File "<ipython-input-36-2a5ae58edc18>", line 2

for i in range(20):

^

SyntaxError: invalid character in identifier

 

 

In [37]: random_numbers = []

    ...: for i in range(20):

    ...: random_numbers.append(random.randint(1,10))

    ...: print(random_numbers, len(random_numbers))

    ...:

[1, 1, 6, 3, 2, 10, 4, 10, 5, 1, 7, 5, 4, 6, 7, 9, 2, 8, 2, 10] 20

 

In [38]: #之前两个打错了啊,不要在意

 

In [39]: #为什么我要建议能用for,就不要while?

 

In [40]: #:因为写很多代码的时候,很容易将while循环写成死循环。

 

In [41]: #但是有些同学会说,我小心一点,不就行了吗?

 

In [42]: #:“小心一点”就意味着多花时间和精力。

 

In [43]: #————————————————————————————————————————————————————————————————

 

In [44]: #什么时候必须用while循环?

 

In [45]: #:当循环的条件跟数量没有关系时,只能用while循环。

 

In [46]: #————————————————————————————————————————————————————————————————

 

In [47]: #举个例子:往空列表中添加随即数,知道添加的数为9,则终止。

 

In [48]: #直到添加的数为9

 

In [49]: random_numbers = []

 

In [50]: while 9 not in random_numbers

File "<ipython-input-50-d6db7c96a19f>", line 1

while 9 not in random_numbers

^

SyntaxError: invalid syntax

 

 

In [51]: random_numbers = []

    ...: while 9 not in random_numbers:

    ...: random_numbers.append(random.randint(1,10))

    ...:

 

In [52]: print(random_numbers, len(random_numbers))

    ...:

    ...:

    ...:

    ...:

[6, 5, 4, 8, 10, 10, 9] 7

 

In [53]: #它就是说,本次随即生成第7次才会出现数字9。

 

In [54]: #————————————————————————————————————————————————————————————————

 

In [55]: #这次课程我们来点好玩的:留一个课后问题,大家自己去想想:

 

In [56]: print('\n问题:a = [1,2,3], b = 1, c = (b in a),大家猜测一下,c是一个什么类型,它是不是一个元组呢?\n')

 

问题:a = [1,2,3], b = 1, c = (b in a),大家猜测一下,c是一个什么类型,它是不是一个元组呢?

 

 

In [57]: print("\n本次“只读课堂”的python教程就到这了,欢迎继续收看!\n")

 

本次“只读课堂”的python教程就到这了,欢迎继续收看!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值