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实现竖排打印传单手机号码易撕条
Mar 16 Python
Python cookbook(数据结构与算法)实现优先级队列的方法示例
Feb 18 Python
Python实现输入二叉树的先序和中序遍历,再输出后序遍历操作示例
Jul 27 Python
Python实现简单的用户交互方法详解
Sep 25 Python
​如何愉快地迁移到 Python 3
Apr 28 Python
python 同时读取多个文件的例子
Jul 16 Python
基于python的selenium两种文件上传操作实现详解
Sep 19 Python
Python urlencode和unquote函数使用实例解析
Mar 31 Python
利用Python实现某OA系统的自动定位功能
May 27 Python
python求解汉诺塔游戏
Jul 09 Python
Ubuntu配置Pytorch on Graph (PoG)环境过程图解
Nov 19 Python
python中sqllite插入numpy数组到数据库的实现方法
Jun 21 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
常用星际术语索引(新手指南)
2020/03/04 星际争霸
可快速识别放射性物质-国外大神教你diy一个开放式辐射探测器
2020/03/12 无线电
用PHP ob_start()控制浏览器cache、生成html实现代码
2010/02/16 PHP
探讨PHP调用时间格式的参数详解
2013/06/06 PHP
javascript 使td内容不换行不撑开
2012/11/29 Javascript
Jquery 自定义动画概述及示例
2013/03/29 Javascript
js设置document.domain实现跨域的注意点分析
2015/05/21 Javascript
JavaScript知识点总结(十)之this关键字
2016/05/31 Javascript
jQuery+ajax实现实用的点赞插件代码
2016/07/06 Javascript
js 实现数值的千分位及保存小数方法(推荐)
2016/08/01 Javascript
js实现常用排序算法
2016/08/09 Javascript
轻松实现js选项卡切换效果
2016/09/24 Javascript
详解用vue2.x版本+adminLTE开源框架搭建后台应用模版
2019/03/15 Javascript
vue draggable resizable 实现可拖拽缩放的组件功能
2019/07/15 Javascript
vue element 生成无线级左侧菜单的实现代码
2019/08/21 Javascript
js实现3D旋转相册
2020/08/02 Javascript
python使用marshal模块序列化实例
2014/09/25 Python
Python切片知识解析
2016/03/06 Python
python 顺时针打印矩阵的超简洁代码
2018/11/14 Python
Python中shapefile转换geojson的示例
2019/01/03 Python
Python表达式的优先级详解
2020/02/18 Python
HTML5 canvas基本绘图之绘制线段
2016/06/27 HTML / CSS
南威尔士家居商店:Leekes
2016/10/25 全球购物
Skechers越南官方网站:来自美国的运动休闲品牌
2021/02/22 全球购物
2014年关于两会精神的心得体会
2014/03/17 职场文书
初三学生个人自我评定
2014/04/06 职场文书
博士生求职信
2014/07/06 职场文书
道路运输企业安全生产责任书
2014/07/28 职场文书
2015年教师节感言
2015/08/03 职场文书
2016年公务员六五普法心得体会
2016/01/21 职场文书
《童年的发现》教学反思
2016/02/18 职场文书
Element-ui Layout布局(Row和Col组件)的实现
2021/12/06 Vue.js
vue中div禁止点击事件的实现
2022/04/02 Vue.js
Redis基本数据类型String常用操作命令
2022/06/01 Redis
使用Apache Camel表达REST服务的方法
2022/06/10 Servers
HttpClient实现表单提交上传文件
2022/08/14 Java/Android