python中while和for的区别总结

yipeiwu_com7年前Python基础

Python中for循环和while循环本质上是没有区别的,但是在实际应用上,针对性不太一样。

while循环适用于未知循环次数的循环,for循环适用于已知循环次数的循环 。

for主要应用在遍历中,比如:

for i in range(10):

  print(i)

打印结果为:

0 1 2 3 4 5 6 7 8 9  

list1 = [1,2,"a”]

for i in list1:

  print(i)

#打印结果为逐步列表list1中的元素:

1

2

a

而while循环很少进行遍历使用(语句过多,没有for方便),while主要用于判断符合条件下循环,比如:

i = 0

while True:

  if i<3:

    print(i)

    i += 1

  else:

    print("i>=3啦!")

    break

#运行结果:当i叠加到3前,依次打印i的值,当i等于3的时候判断语句不成立,执行else语句,跳出while循环

#打印结果:

0

1

2

扩展实例:

while循环应用举例:
#为什么要用循环?循环可以使需要重复的代码只写一遍即可
a=10
#只要条件成立,就去执行条件后的代码块,条件不成立,直接跳过
while a==10:
 #第一种结束while循环的方式,更改循环的条件,让条件不成立
 number=input('请输入数字,输入0结束while循环:')
 #%s 通用占位符
 #如果字符串中只有一个占位符,可以将变量直接写在%之后
 #如果字符串中有两个或者两个以上的占位符,必须写在%之后,添加小括号(),将占位的变量写在小括号内
 print('您输入的数字为%s'%number)
 if number=='0':
  #更改a的值,让其不等于10
  a=20
#第二种结束while循环的方式 使用break关键字结束循环
#True 布尔类型的数据 True(真 可以使用数字1表示)和False(假 可以使用数字0表示)
while True:
 number=input('请输入内容,输入0结束循环:')
 if number=='0':
  #break跳出当前循环,结束while循环
  #break可结束for循环,也可结束while循环,结束离自己最近的循环
  break
for循环应用举例(九九乘法表)
#coding:utf-8
#python中的for循环
#for 指定循环次数
#利用for循环 输出99乘法表
#输出范围,包含5,不包含10
#for x in range(5,10):
# print x,
for i in range(1,10):
 for j in range(1,i+1):
  # print ('%s*%s=%s'%(i,j,i*j))
  #\t表示制表,使竖排对齐
   print(' %d*%d=%d'%(j,i,j*i),end="")
  # print j, "*", i, "=", i * j,' ',
 #换行三种方式:方法一 print \ 方法二 print '\n' 法三:'\r'
 print('\r')

相关文章

使用Django的模版来配合字符串翻译工作

Django模板使用两种模板标签,且语法格式与Python代码有些许不同。 为了使得模板访问到标签,需要将 {% load i18n %} 放在模板最前面。 这个{% trans %}模...

Python的Socket编程过程中实现UDP端口复用的实例分享

关于端口复用 一个套接字不能同时绑定多个端口,如果客户端想绑定端口号,一定要调用发送信息函数之前绑定( bind )端口,因为在发送信息函数( sendto, 或 write ),系统会...

Python数据结构与算法之列表(链表,linked list)简单实现

Python 中的 list 并不是我们传统(计算机科学)意义上的列表,这也是其 append 操作会比 insert 操作效率高的原因。传统列表——通常也叫作链表(linked lis...

Python基于百度云文字识别API

本文实例为大家分享了Python实现最简单的文字识别的具体代码,供大家参考,具体内容如下 Python版本:3.6.5 百度云提供的文字识别技术,准确率还是非常高的,而且每天还有5w次免...

python生成器,可迭代对象,迭代器区别和联系

python生成器,可迭代对象,迭代器区别和联系

生成器,可迭代对象,迭代器之间究竟是什么关系? 用一幅图来概括: 1.生成器 定义生成器 方式一: //区别于列表生成式 gen = [x*x for x in range(...