Python 中的for,if-else和while语句

2019-01-15 07:04:43来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

for 循环

功能

for 循环是一种迭代循环机制,迭代即重复相同的逻辑操作,每次的操作都是基于上一次的结果而进行的。并且for循环可以遍历任何序列的项目,如一个列表或者一个字符串

语法

for 循环的一般格式如下:

for <variable> in <sequence>
    <staements>

注释:variable 为变量,用于控制被迭代的对象;sequence 是可迭代的对象多为列表或者字符串

for循环实例:

str="hello"

for i in str :
    print(i)

 

运行结果:

       D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/day1/boke.py

h

e

l

l

o

遍历序列类型:

name_list=['hu','jin','xie','xu']

for i in name_list : #通过序列迭代
    print(i)
print('\n')

for i in range(len(name_list)) : #通过索引迭代
    print('index is %s,name is %s'%(i+1,name_list[i]))
print('\n')

for i ,name in enumerate(name_list,1) : #基于enumerate的项和索引
    print('index is %s,name is %s'%(i,name))

运行结果:

D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/day1/boke.py

hu

jin

xie

xu

 

index is 1,name is hu

index is 2,name is jin

index is 3,name is xie

index is 4,name is xu

 

index is 1,name is hu

index is 2,name is jin

index is 3,name is xie

index is 4,name is xu

for语句中的range()函数

如果你需要遍历数字序列,可以使用内置range()函数,它会生成数列。

range()的语法:

range(start,end,step=1)

(1)    range(10):默认step=1,start=0,生成的可迭代对象,包含[0,1,2,3,4,5,6,7,8,9]

(2)    range(1,10):指定start=1,end=10, 默认step=1,生成的可迭代对象,包含[1,2,3,4,5,6,7,8,9]

(3)    range(1,10,2): 指定start=1,end=10, step=2,生成的可迭代对象,包含[1,3,5,7,9]

例如:

for i in range(1,10,2) :
    print(i)

运行结果:

1

3

5

7

9

注:for基于range()实现计数循环,range()声称可迭代对象,说明for循环本质还是一种迭代循环

你可以结合range()和len()函数以遍历一个序列的索引,如下所示:

str=['hu','jin','xie','xu']
for i in range(len(str)) :
    print(i+1 ,str[i])

运行结果:

D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/day1/boke.py

1 hu

2 jin

3 xie

4 xu

if-else 语句

Python编程中if语句用于控制程序的执行,基本形式为:

if 判断条件:
    执行语句.....
else :
    执行语句.....

其中“判断条件”成立时(非零),则执行后面的语句,执行的内容以缩进来区分表示同一范围。else为可选语句,当条件不成立时执行相关语句,具体例子如下:

_name="leigou"

name = input("username:")
if name == _name :
    print("Welcome boss")
else :
    print("you are wrong the name is %s:"%_name)

正确输入时,运行结果:

D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/z.py

username:leigou

Welcome boss

错误输入时,运行结果:

D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/z.py

username:Leigou

you are wrong the name is:leigou

 

当判断多个文件值时,可以使用以下形式:

if 判断条件1:
    执行语句1.....
elif 判断条件2:
    执行语句2.....
elif 判断条件3 :
    执行语句3.....
else :
    执行语句4.....

实例如下:

num=2
if num == 1 :
    print("boss")
elif num == 2:
    print("student")
elif num == 3:
    print("worker")
else :
    print(num)  #条件都不成立时输出

运行结果:

D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/z.py

student

如果判断需要多个条件同时判断时,可以使用or(或),表示两个条件有一个成立时判断条件即成立;表示两个条件同时成立的情况下,判断条件才成立,可以使用and(与),实例如下:

num = 10
if num > 0 or num < 10 :
    print("hello")
else :
    print("undefine")

num = 8
if (num >= 0 and num <= 5) or (num >= 10 and num <= 15) :
    print("hello")
else :
    print("undefine")

运行结果:

D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/z.py

hello

hello

undefine

while循环

Python编程中while循环语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务,其基本形式如下:

while 判断条件:
    执行语句......

执行语句可以是单个语句块。判断语句可以是任何表达式,任何非零或非空的值均为True。当判断条件是Flase时,循环结束,实例如下:

count=0
while count < 5 :
    print("This count is :%s"%count)
    count+=1
print("Good bye!")

运行结果:D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/z.py

This count is :0

This count is :1

This count is :2

This count is :3

This count is :4

Good bye!

while语句还有另外两个重要的命令continue,break来跳过循环,continue用来跳过该次循环,break则用来退出本次循环,此外“判断条件”还可以是个常数,表示循环必定成立,具体用法如下:

i=1
while i < 10 :
    i = i + 1
    if i%2 > 0 :
        continue
    print(i)
print("="*40)

i=1
while 1 :
    print(i,"\t",end="")
    i+=1

运行结果:

D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/z.py

2

4

6

8

10

========================================

1   2   3   4   5   6   7   8   9   10

 


原文链接:https://www.cnblogs.com/hccpy/p/10256918.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:探讨2018年最受欢迎的15顶级Python库!

下一篇:线程、进程、协程和GIL(三)