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

 更新时间:2018年12月19日 11:10:08   作者:oOo右右  
这篇文章主要介绍了Python通用循环的构造方法,结合实例形式分析了Python常见的交互循环、哨兵循环、文件循环、死循环等实现与处理技巧,需要的朋友可以参考下

本文实例讲述了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数学运算技巧总结》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

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

相关文章

  • flask应用部署到服务器的方法

    flask应用部署到服务器的方法

    这篇文章主要介绍了flask应用部署到服务器的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Python 图像处理 Pillow 库详情

    Python 图像处理 Pillow 库详情

    这篇文章主要介绍了Python 图像处理 Pillow 库,图像处理是常用的技术,python 拥有丰富的第三方扩展库,Pillow 是 Python3 最常用的图像处理库,目前最高版本5.2.0。Python2 使用Pil库,两者是使用方法差不多,区别在于类的引用不同。下面来看看文章的详细内容
    2021-11-11
  • Python selenium页面加载慢超时的解决方案

    Python selenium页面加载慢超时的解决方案

    这篇文章主要介绍了Python selenium页面加载慢超时的解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • selenium+python自动化测试之鼠标和键盘事件

    selenium+python自动化测试之鼠标和键盘事件

    这篇文章主要介绍了selenium+python自动化测试之鼠标和键盘事件,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • python中dtypes和type()函数的区别示例详解

    python中dtypes和type()函数的区别示例详解

    type()是python内置的函数,type()返回数据结构类型(list、dict、numpy.ndarray 等),dtype返回数据元素的数据类型(int、float等),这篇文章主要给大家介绍了关于python中dtypes和type()函数区别的相关资料,需要的朋友可以参考下
    2024-03-03
  • Tensorflow中k.gradients()和tf.stop_gradient()用法说明

    Tensorflow中k.gradients()和tf.stop_gradient()用法说明

    这篇文章主要介绍了Tensorflow中k.gradients()和tf.stop_gradient()用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Django --Xadmin 判断登录者身份实例

    Django --Xadmin 判断登录者身份实例

    这篇文章主要介绍了Django --Xadmin 判断登录者身份实例,具有很好的参考价值,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • python删除文件示例分享

    python删除文件示例分享

    这篇文章主要介绍了删除文件夹下所有文件和子文件夹的示例,大家参考使用吧
    2014-01-01
  • Python txt文件如何转换成字典

    Python txt文件如何转换成字典

    这篇文章主要介绍了Python txt文件如何转换成字典,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • scipy稀疏数组dok_array的具体使用

    scipy稀疏数组dok_array的具体使用

    本文主要介绍了scipy稀疏数组dok_array的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02

最新评论