溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Python通用循環(huán)的構(gòu)造方法實(shí)例分析

發(fā)布時(shí)間:2020-10-21 18:57:56 來(lái)源:腳本之家 閱讀:116 作者:oOo右右 欄目:開(kāi)發(fā)技術(shù)

本文實(shí)例講述了Python通用循環(huán)的構(gòu)造方法。分享給大家供大家參考,具體如下:

1.交互循環(huán)

是無(wú)限循環(huán)的一種,允許用戶(hù)通過(guò)交互的方式程序的特定部分

def main():
  sum =0.0
  count =0
  moredata ='yes'  #字符串
  while moredata[0] =='y': #獲取字符串第一個(gè)字符,true執(zhí)行下面的
    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.哨兵循環(huán):

執(zhí)行循環(huán)要遇到設(shè)定的特殊數(shù)據(jù),循環(huán)語(yǔ)句才會(huì)終止。

哨兵循環(huán)求平均數(shù)的方法:

1)設(shè)定一個(gè)哨兵值作為循環(huán)終止的標(biāo)識(shí);

2)任何值都可以看做哨兵,但是要與實(shí)際數(shù)有所區(qū)別;

python中空字符串以雙引號(hào)""表示,注意引號(hào)中間沒(méi)有空格?。?!

def main():
  sum =0
  count =0
  xStr = input("enter a number")
  while xStr != "":  #空字符串
    x = eval(xStr)  #轉(zhuǎn)換字符串為數(shù)字的過(guò)成
    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 :  這里確認(rèn)輸入不是哨兵空字符才將輸入字符串轉(zhuǎn)換為數(shù)字
average is 6.0

eval() 函數(shù)參數(shù)是字符串可以當(dāng)成有效python表達(dá)式來(lái)求值,并返回計(jì)算結(jié)果

3.文件循環(huán)

def main():
  fileName = input("file denumber:") #這個(gè)相當(dāng)于一個(gè)文件
  infile = open(fileName,'r') #open(文件名,方式'r'/'w')函數(shù)用來(lái)打開(kāi)這個(gè)文件的一行保存在infile列表(相當(dāng)一個(gè)數(shù)組)中
  sum =0
  count = 0
  for line ininfile:   #循環(huán)變量line遍歷文件的每一行(文件每一行已經(jīng)保存在infile列表中),將每一行執(zhí)行下面的代碼
    sum = sum+eval(line)
    count = count +1
  print("aveage is:",sum/count)
main()

循環(huán)遍歷文件,通常的方法是用哨兵方法一次讀取文件的一行

這個(gè)可以用來(lái)讀取excel中的測(cè)試用例;

python中采用readline()方法的end-of-file循環(huán)模式:

readline()將文件的一行讀取到字符串中,在文件尾部readline()返回一個(gè)空字符串可以作為哨兵值;

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

這段代碼會(huì)讓人誤以為遇到一個(gè)空行時(shí)就會(huì)退出,其實(shí)不然文本文件的空行包括一個(gè)換行符\n  這樣readline()函數(shù)返回值是換行符,而不是哨兵值空字符串,循環(huán)繼續(xù)

open()  打開(kāi)文件讀取保存到list中

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

4.死循環(huán)

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

while True:
  try:
    x = int(input("輸入一個(gè)數(shù)字:"))
    break
  except ValueError:
    print("重新輸入:")

copy()函數(shù):

返回字典的淺拷貝;

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

運(yùn)行結(jié)果:

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

python讀取excel:

注意讀取時(shí)候加上表頭,沒(méi)表頭不行,所以測(cè)試用例要有表頭。

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Python函數(shù)使用技巧總結(jié)》、《Python數(shù)學(xué)運(yùn)算技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python字符串操作技巧匯總》及《Python入門(mén)與進(jìn)階經(jīng)典教程》

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI