Python通用循环的构造方法实例分析


Posted in Python onDecember 19, 2018

本文实例讲述了Python通用循环的构造方法。分享给大家供大家参考,具体如下:

1.交互循环

是无限循环的一种,允许用户通过交互的方式程序的特定部分

def main():
  sum =0.0
  count =0
  moredata ='yes'  #字符串
  while moredata[0] =='y': #获取字符串第一个字符,true执行下面的
    x =eval(input('enter a number>>'))
    sum =sum+x
    count = count +1
    moredata =input("你有更多的number(yes or no)")
  print("pingjunshushi:\n",sum/count)
main()
enter a number >>3
你有更多的number(yesor no)y
enter a number >>4
你有更多的number(yesor no)n
pingjunshushi:
 3.5

2.哨兵循环:

执行循环要遇到设定的特殊数据,循环语句才会终止。

哨兵循环求平均数的方法:

1)设定一个哨兵值作为循环终止的标识;

2)任何值都可以看做哨兵,但是要与实际数有所区别;

python中空字符串以双引号""表示,注意引号中间没有空格!!!

def main():
  sum =0
  count =0
  xStr = input("enter a number")
  while xStr != "":  #空字符串
    x = eval(xStr)  #转换字符串为数字的过成
    sum = sum + x
    count =count +1
    xStr = input("enter a number :")
  print("average is",sum/count)
main()
enter a number6
enter a number :6
enter a number :6
enter a number :  这里确认输入不是哨兵空字符才将输入字符串转换为数字
average is 6.0

eval() 函数参数是字符串可以当成有效python表达式来求值,并返回计算结果

3.文件循环

def main():
  fileName = input("file denumber:") #这个相当于一个文件
  infile = open(fileName,'r') #open(文件名,方式'r'/'w')函数用来打开这个文件的一行保存在infile列表(相当一个数组)中
  sum =0
  count = 0
  for line ininfile:   #循环变量line遍历文件的每一行(文件每一行已经保存在infile列表中),将每一行执行下面的代码
    sum = sum+eval(line)
    count = count +1
  print("aveage is:",sum/count)
main()

循环遍历文件,通常的方法是用哨兵方法一次读取文件的一行

这个可以用来读取excel中的测试用例;

python中采用readline()方法的end-of-file循环模式:

readline()将文件的一行读取到字符串中,在文件尾部readline()返回一个空字符串可以作为哨兵值;

line=infile.readline()
while line != "":
#处理每一行
line =infile.readline()

这段代码会让人误以为遇到一个空行时就会退出,其实不然文本文件的空行包括一个换行符\n  这样readline()函数返回值是换行符,而不是哨兵值空字符串,循环继续

open()  打开文件读取保存到list中

readline()读取文件,每次读取一行

4.死循环

python中可以用python完成特定的功能:

while True:
  try:
    x = int(input("输入一个数字:"))
    break
  except ValueError:
    print("重新输入:")

copy()函数:

返回字典的浅拷贝;

dict1={"name":"liyue"}
dict2=dict1.copy()
print("dict2 is:",str(dict2))

运行结果:

dict2 is: {'name': 'liyue'}

python读取excel:

注意读取时候加上表头,没表头不行,所以测试用例要有表头。

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python的类变量和成员变量用法实例教程
Aug 25 Python
详解Python中的__getitem__方法与slice对象的切片操作
Jun 27 Python
Python 3.8正式发布,来尝鲜这些新特性吧
Oct 15 Python
python3 Scrapy爬虫框架ip代理配置的方法
Jan 17 Python
Pytorch之finetune使用详解
Jan 18 Python
基于TensorBoard中graph模块图结构分析
Feb 15 Python
Python3使用腾讯云文字识别(腾讯OCR)提取图片中的文字内容实例详解
Feb 18 Python
浅谈spring boot 集成 log4j 解决与logback冲突的问题
Feb 20 Python
Python GUI库PyQt5图形和特效样式QSS介绍
Feb 25 Python
如何让PyQt5中QWebEngineView与JavaScript交互
Oct 21 Python
python实现求纯色彩图像的边框
Apr 08 Python
Pytest中conftest.py的用法
Jun 27 Python
Python实现对字典分别按键(key)和值(value)进行排序的方法分析
Dec 19 #Python
对json字符串与python字符串的不同之处详解
Dec 19 #Python
浅谈Python接口对json串的处理方法
Dec 19 #Python
python实现的MySQL增删改查操作实例小结
Dec 19 #Python
python3 http提交json参数并获取返回值的方法
Dec 19 #Python
python3.6使用urllib完成下载的实例
Dec 19 #Python
使用urllib库的urlretrieve()方法下载网络文件到本地的方法
Dec 19 #Python
You might like
GD输出汉字的函数的分析
2006/10/09 PHP
扩展你的 PHP 之入门篇
2006/12/04 PHP
PHP内置的Math函数效率测试
2014/12/01 PHP
PHP file_get_contents函数读取远程数据超时的解决方法
2015/05/13 PHP
Laravel框架Blade模板简介及模板继承用法分析
2019/12/03 PHP
javascript 函数速查表
2010/02/07 Javascript
jquery.cookie用法详细解析
2013/12/18 Javascript
jquery live()重复绑定的解决方法介绍
2014/01/03 Javascript
javascript计时器事件使用详解
2014/01/07 Javascript
JavaScript输入邮箱自动提示实例代码
2014/01/13 Javascript
JS实现网页标题随机显示名人名言的方法
2015/11/03 Javascript
jQuery qrcode生成二维码的方法
2016/04/03 Javascript
详解Node.js模块间共享数据库连接的方法
2016/05/24 Javascript
request请求获取参数的实现方法(post和get两种方式)
2016/09/27 Javascript
KnockoutJS 3.X API 第四章之数据控制流with绑定
2016/10/10 Javascript
js拼接html字符串的注意事项
2016/10/13 Javascript
解析JavaScript实现DDoS攻击原理与保护措施
2016/12/26 Javascript
详解Vue整合axios的实例代码
2017/06/21 Javascript
puppeteer实现html截图的示例代码
2019/01/10 Javascript
JavaScript写个贪吃蛇小游戏(超详细)
2020/03/17 Javascript
详解Python3中的Sequence type的使用
2015/08/01 Python
Python实现购物系统(示例讲解)
2017/09/13 Python
python实现监控某个服务 服务崩溃即发送邮件报告
2018/06/21 Python
Tensorflow 同时载入多个模型的实例讲解
2018/07/27 Python
python 同时运行多个程序的实例
2019/01/07 Python
pycharm 设置项目的根目录教程
2020/02/12 Python
详解CSS3的opacity属性设置透明效果的用法
2016/05/09 HTML / CSS
html5使用canvas绘制一张图片
2014/12/15 HTML / CSS
金士达面试非笔试
2012/03/14 面试题
求职信需要的五点内容
2014/02/01 职场文书
工程造价专业大学生职业规划范文
2014/03/09 职场文书
收入证明范本
2015/06/12 职场文书
高中运动会广播稿
2015/08/19 职场文书
javascript canvas实现雨滴效果
2021/06/09 Javascript
python对文档中元素删除,替换操作
2022/04/02 Python
Spring Cloud Netflix 套件中的负载均衡组件 Ribbon
2022/04/13 Java/Android