@zhangyu756897669
2017-08-20T14:42:09.000000Z
字数 3157
阅读 646
python官方文档
您可以使用while语句一次又一次地执行代码块,只要while语句的条件为True,while子句中的代码将被执行。在代码中,while语句总是包含以下内容:
你可以看到while语句看起来类似于if语句。区别在于它们的作用。在if子句的末尾,程序执行在if语句之后继续执行。但是在while子句结束时,程序执行将返回到while语句的开头。 while子句通常称为循环或while循环。
spam = 0
if spam < 5
print('Hello World.')
spam = spam + 1
spam = 0
while spam < 5
print('Hello World.')
spam = spam + 1
在while循环中,始终在每次迭代开始时检查条件(即每次循环执行时)。如果条件为True,则执行子句,之后再次检查条件。第一次发现条件为False时,会忽略while子句。
这是一个小型示例程序,将不断要求您键入字面上的名称:
name = ''
while name != 'Zhang Yu':
print('please type your name:')
name = input()
print('Thank you')
有一个快捷方式让程序执行早点突破一个循环的子句。如果执行到达break语句,它将立即退出while循环的子句。在代码中,break语句只包含break关键字。
很简单,对吧?这是一个与上一个程序相同的程序,但它使用break语句来转义循环。
while True:
print('Please type your name.')
name = input()
if name == 'ZhangYu':
break
print('Thank you!')
while True:
print('Hello world!')
while True:
print('Who are you?')
name = input()
if name != 'Joe':
continue
print('Hello, Joe. what is the password?(It is a fish.)')
password = input()
if password == 'swordfish':
break
print('Access granted.')
4"Trunthy"和"Falsy".
其他数据类型中有一些值将被视为等同于True和False。当在条件中使用时,0,0.0和''(空字符串)被认为是False,而所有其他值都被视为True。
name = ''
while not name:
print('Enter your name:')
name = input()
print('How many guests will you have?')
numOfGuests = int(input())
if numOfGuests:
print('Be sure to have enough room for all your guests.')
print('Done')
如果用户输入一个空白字符串作为name,那么while语句的条件将为True,程序继续请求一个名字。如果numOfGuest的值不是0,那么条件被认为是True,程序会为用户打印一个提醒。
在代码中,for循环包含以下内容:
print('My name is')
for i in range(5):
print('Zhang Yu(' + str(i) + ')')
for循环子句中的代码运行五次。第一次运行时,变量i设置为0.该子句中的print()调用将打印Jimmy Five Times(0)。在Python通过for循环子句中的所有代码完成迭代之后,执行返回到循环的顶部,并且for语句将i递增1。
您也可以在for循环中使用break和continue语句。 continue语句将继续到for循环计数器的下一个值,就好像程序执行已经到达循环结束并返回到开始。实际上,您只能在while和for循环中使用continue和break语句。如果您尝试在其他地方使用这些语句,Python会给您一个错误。
作为另一个循环的例子,考虑这个关于数学家卡尔·弗里德里希·高斯的故事。当高斯是一个男孩时,老师想给班上布置了一个作业。老师告诉他们将数字从0加到100。高斯提出了一个聪明的技巧,在几秒钟内找出答案,但是你可以用for循环编写一个Python程序来为你做这个计算。
(年轻高斯认为,有50对数字加起来为101:1+100,2+99,3+98,4+97等,直到50+51.由于50×101是5,050,所有的从0到100的数字和是5,050。聪明的孩子!)
total = 0
for num in range(101):
total = total + num
print(total)
print(My name is')
i = 0
while i < 5:
print('Jimmy Five Times(' + str(i) + ')')
i = i + 1
for i in range(12, 16)
print(i)
for i in range(0, 10, 2):
print(i)
for i in range(5, -1, 1):
print(i)
在使用模块中的功能之前,必须使用import语句导入模块。在代码中,import语句包含以下内容:
import random
for i in range(5):
print(random.randint(1,10))
random.randint()函数调用计算出通过它的两个整数之间的随机整数值。
4. 还可以导入不同的模块,如
import random, sys, os, math