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程序设计有所帮助。

相关文章

  • PHPMyAdmin及权限配置

    PHPMyAdmin及权限配置

    这篇文章主要介绍了PHPMyAdmin及权限配置,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2014-08-08
  • 如何使用Python生成Hilbert矩阵

    如何使用Python生成Hilbert矩阵

    这篇文章主要介绍了如何使用Python生成Hilbert矩阵,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • Python列表的深复制和浅复制示例详解

    Python列表的深复制和浅复制示例详解

    这篇文章主要给大家介绍了关于Python列表的深复制和浅复制的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • Pandas实现列(column)排序的几种方法

    Pandas实现列(column)排序的几种方法

    Pandas是一种高效的数据处理库,在数据处理过程中,咱们经常需要将列按照一定的要求进行排序,本文就来介绍一下Pandas实现列(column)排序的几种方法,感兴趣的可以了解一下
    2023-11-11
  • python中的五种异常处理机制介绍

    python中的五种异常处理机制介绍

    这篇文章主要介绍了python中的五种异常处理机制介绍,本文是Learn Python一书的读书笔记,需要的朋友可以参考下
    2014-09-09
  • 基于DATAFRAME中元素的读取与修改方法

    基于DATAFRAME中元素的读取与修改方法

    今天小编就为大家分享一篇基于DATAFRAME中元素的读取与修改方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • pytorch搭建模型的五大层次级别解读(由浅入深)

    pytorch搭建模型的五大层次级别解读(由浅入深)

    这篇文章主要介绍了pytorch搭建模型的五大层次级别(由浅入深),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • numpy 矩阵形状调整:拉伸、变成一位数组的实例

    numpy 矩阵形状调整:拉伸、变成一位数组的实例

    这篇文章主要介绍了numpy 矩阵形状调整:拉伸、变成一位数组的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Pytorch固定随机数种子的方法小结

    Pytorch固定随机数种子的方法小结

    在对神经网络模型进行训练时,有时候会存在对训练过程进行复现的需求,然而,每次运行时 Pytorch、Numpy 中的随机性将使得该目的变得困难重重,基于此,本文记录了 Pytorch 中的固定随机数种子的方法,需要的朋友可以参考下
    2023-12-12
  • 一篇文章带你了解python标准库--random模块

    一篇文章带你了解python标准库--random模块

    这篇文章主要给大家介绍了关于Python中random模块常用方法的使用教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-08-08

最新评论