全新Python學(xué)習(xí)day03

while循環(huán)應(yīng)用

分析:1-100的累加和,即1 + 2 + 3 + 4 +….,即前兩個(gè)數(shù)字的相加結(jié)果 + 下一個(gè)數(shù)字( 前一個(gè)數(shù)字 + 1)。

# 1~100 的累加和
i = 1
mySum = 0
while i <= 100:
    # mySum = mySum + i
    mySum += i
    i += 1
print(mySum)
# 使用if
#  1~100 求所有能被3整除的數(shù)的和
i = 3
mySum = 0
while i <= 100:
    if i%3 == 0:
        print(f'i = {i}')
        mySum += i
    i += 1
print(mySum)

# while True:
#     pass

注意:為了驗(yàn)證程序的準(zhǔn)確性,可以先改小數(shù)值,驗(yàn)證結(jié)果正確后,再改成1-100做累加。

2. 計(jì)算1~100之間偶數(shù)的累積和(包含1和100)

分析:1-100的偶數(shù)和,即 2 + 4 + 6 + 8....,得到偶數(shù)的方法如下:

  • 偶數(shù)即是和2取余結(jié)果為0的數(shù)字,可以加入條件語(yǔ)句判斷是否為偶數(shù),為偶數(shù)則累加
  • 初始值為0 / 2 , 計(jì)數(shù)器每次累加2

參考代碼如下:

方法一:條件判斷和2取余數(shù)則累加

i = 1
sum = 0
while i <= 100:
    if i % 2 == 0:
        sum = sum + i
    i+=1

print("1~100的累積和為:%d" % sum)

方法二:計(jì)數(shù)器控制

i = 0
result = 0
while i <= 100:
    result += i
    i += 2

# 輸出2550
print(result)

終止循環(huán)的方式

  • break 終止本層循環(huán)
  • continue 結(jié)束本次循環(huán),執(zhí)行下一次循環(huán)
# 累加和達(dá)到1000時(shí)停止并輸出結(jié)果
i = 1
mySum = 0
while i <= 100:
    if mySum > 1000:
        break
    mySum += i
    i += 1
print(mySum)

# 計(jì)算1~100所有奇數(shù)累加和
i = 1
mySum = 0
while i <= 100:
    if i%2 == 0:
        i += 1
        continue
    mySum += i
    i += 1
print(mySum)

猜數(shù)字游戲

# 1到100之間猜數(shù)字游戲
from random import randint
# randint(a, b) 生成 [a, b]區(qū)間的隨機(jī)整數(shù)
computer_num = randint(1, 100)
# print(computer_num)
while True:
    player_num = int(input("請(qǐng)輸入您猜的數(shù)字"))
    if player_num > computer_num:
        print("猜大了")
    elif player_num < computer_num:
        print("猜小了")
    else:
        print("恭喜你猜對(duì)了,去領(lǐng)取精美的獎(jiǎng)品吧")
        break

for循環(huán)

格式
for 臨時(shí)變量 in 迭代對(duì)象:
    循環(huán)體

# 0~9
for i in range(10):
    print(i)
# range(開(kāi)始, 結(jié)束, 步長(zhǎng))  左閉右開(kāi)的區(qū)間
# 1 ~ 10
for i in range(1, 11):
    print(i)
# 1~ 20之間所有奇數(shù)
for i in range(1, 21, 2):
    print(i)

for 實(shí)現(xiàn) 1~100 的累加和

mySum = 0
for i in range(1, 101):
    mySum += i
print(mySum)

小作業(yè) :自行使用for完成改寫上面所有while的示例

循環(huán)嵌套

格式

    while 條件1:
        
        條件1滿足時(shí),做的事情1
        條件1滿足時(shí),做的事情2
        條件1滿足時(shí),做的事情3
        ...(省略)...

        while 條件2:
            條件2滿足時(shí),做的事情1
            條件2滿足時(shí),做的事情2
            條件2滿足時(shí),做的事情3
            ...(省略)...

嵌套應(yīng)用
要求:打印如下圖形:

* * * * * 
* * * * * 
* * * * * 
* * * * * 
* * * * * 
i = 0
while i < 5:
    j = 0
    while j < 5:
        print("* ", end='') # 不換行
        j += 1
    # 換行
    print()
    i+=1
* 
* * 
* * * 
* * * * 
* * * * * 
i = 0
while i < 5:
    j = 0
    while j < i+1:
        print("* ", end='')
        j += 1
    print()
    i+=1
i = 1
while i < 10:
    j = 1
    while j < i+1:
        print(f"{j} x {i} = {i*j} ", end='\t')
        j += 1
    print()
    i+=1


for i in range(1, 10):
    for j in range(1, i+1):
        print(f"{j} x {i} = {i*j} ", end='\t')
    print()

列表介紹

想一想:

前面學(xué)習(xí)的字符串可以用來(lái)存儲(chǔ)一串信息,那么想一想,怎樣存儲(chǔ)咱們班所有同學(xué)的名字呢?

定義100個(gè)變量,每個(gè)變量存放一個(gè)學(xué)生的姓名可行嗎?有更好的辦法嗎?

答:

列表

列表的格式

列表名 = [元素1,, 元素2....]
heroList = ['小魯班', '妲己', '貂蟬', 111, 99.1, [111, 222]]
print(heroList)
print(type(heroList))
# 訪問(wèn) 索引訪問(wèn)
print(heroList[0])
# 遍歷
for i in range(6):
    print((heroList[i]))
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1 順序語(yǔ)句 語(yǔ)句:使用分號(hào)分隔的代碼稱作為一個(gè)語(yǔ)句。 注意:沒(méi)有寫任何代碼只是一個(gè)分號(hào)的時(shí)候,也是一條語(yǔ)句,...
    哈哈哎呦喂閱讀 476評(píng)論 0 0
  • <本周學(xué)習(xí)記錄> 學(xué)習(xí)時(shí)間:3小時(shí) 學(xué)習(xí)內(nèi)容:試聽(tīng)五節(jié)課。整理課程目錄。 學(xué)習(xí)成果:了解課程目錄,記錄視頻課時(shí)時(shí)長(zhǎng)...
    賢記七生閱讀 72評(píng)論 0 0
  • # 開(kāi)發(fā)人員: hanhan丶 # 開(kāi)發(fā)時(shí)間: 2020/10/21 14:37 ################...
    hanhan丶閱讀 433評(píng)論 0 1
  • 一、選擇流程控制語(yǔ)句 順序結(jié)構(gòu)的基本使用 順序結(jié)構(gòu)概述是程序中最簡(jiǎn)單最基本的流程控制,沒(méi)有特定的語(yǔ)法結(jié)構(gòu),按照代碼...
    遼A丶孫悟空閱讀 1,738評(píng)論 1 48
  • # for # 1.作用 #用來(lái)遍歷可迭代對(duì)象的數(shù)據(jù)元素 #可迭代對(duì)象的數(shù)據(jù)元素是指依次獲取數(shù)據(jù)元素的對(duì)象 # 2...
    快樂(lè)的成本很低也買不起閱讀 197評(píng)論 0 1

友情鏈接更多精彩內(nèi)容