日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

03.Python基础--控制流语句-顺序结构-判断结构-循环语句

發布時間:2023/12/15 python 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 03.Python基础--控制流语句-顺序结构-判断结构-循环语句 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 1.控制流語句
    • 1.1 if條件判斷
      • 1.1.1 布爾類型和其他數據類型之間的轉換關系
      • 1.1.2 if 嵌套
      • 1.1.3 列表
    • 1.2 循環語句
      • 1.2.1 for循環
      • 1.2.2 whlie循環
      • 1.2.3打印-1到-20中所有3的倍數
      • 1.2.4 break退出本"層"循環
      • 1.2.5 continue結束本"次"循環
      • 1.2.6 練習 尋找水仙花數

1.控制流語句

順序語句

  • 從左到右, 從上到下

1.1 if條件判斷

計算機之所以能做很多自動化的任務,因為它可以自己做條件判斷。
比如,輸入用戶年齡,根據年齡打印不同的內容,在Python程序中,用if語句實現:
方法一
if <條件判斷表達式>:
<當上面的代碼成立時,運行代碼>

根據Python的縮進規則,如果if語句判斷是True,就把縮進的兩行print語句執行了,否則,什么也不做。

也可以給if添加一個else語句,意思是,如果if判斷是False,不要執行if的內容,去把else執行了:

age = 20 if age >= 18:print('your age is', age)print('adult') your age is 20 adult 例1 a = 1 # 只要看到if 了 , 就是進入 分支語句 # if 后面 判斷表達式 # 判斷表達式后面 冒號: if a < 0:print(1) print(2)2 a = 1 if a == 2:print(1) else:print('不成立')print('后面的代碼')

方法二

if <條件判斷表達式>:
<當上面的代碼成立時,運行代碼>
else:
<當上面代碼不成立時,運行代碼>

a = 1 if a == 2:print(1) else:print('不成立') 不成立

方法三

elif是else if的縮寫,完全可以有多個elif,所以if語句的完整形式就是:
所以if語句的完整形式就是:

if <條件判斷1>:
<執行1>
elif <條件判斷2>:
<執行2>
elif <條件判斷3>:
<執行3>

else:
<執行4>

age = 20 if age >= 6:print('teenager') elif age >= 18:print('adult') else:print('kid')teenager

案例

# 1 - 4 歲 嬰兒 # 4 - 18 歲 兒童 # 18 - 35 青年 # 35 - 55 中年 # 55 以上 老年 age = int(input('請輸入您的年齡')) if age <= 4:print('你是一個小baby') elif age <= 18:print('你還未成年,不能去網吧') elif age <= 35:print('你已經成年了, 可以去網吧玩游戲了') elif age <= 55:print('你是一個中年人了, 不需要去網吧了') else:print('您是一個老年人, 和網吧沒有關系了')請輸入您的年齡1 你是一個小baby

1.1.1 布爾類型和其他數據類型之間的轉換關系

所有空值、0為假,其他為真

bool(0)
bool([])
bool(’’)
都是返回為假false

1.1.2 if 嵌套

if嵌套

通過學習if的基本用法,已經知道了

當需要滿足條件去做事情的這種情況需要使用if
當滿足條件時做事情A,不滿足條件做事情B的這種情況使用if-else
想一想:

坐火車或者地鐵的實際情況是:先進行安檢如果安檢通過才會判斷是否有車票,或者是先檢查是否有車票之后才會進行安檢,即實際的情況某個判斷是再另外一個判斷成立的基礎上進行的,這樣的情況該怎樣解決呢?

答:

if嵌套

if嵌套的格式

if 條件1:滿足條件1 做的事情1滿足條件1 做的事情2...(省略)...if 條件2:滿足條件2 做的事情1滿足條件2 做的事情2...(省略)... # 先檢票 , 如果有票, 則進站 # 如果沒票, 不能進站 # 如果成功進站了, 進行安檢 # 如果沒有危險物品, 則可以上車 # 如果有危險物品, 被抓到派出所 ticket = True danger_thing = True if not danger_thing:print('沒有危險物品可以進站')if ticket:print("恭喜上車")else:print('請出去') else:print('請跟我走一趟')

練一練

情節描述:上公交車,并且可以有座位坐下

要求:輸入公交卡當前的余額,只要超過2元,就可以上公交車;如果空座位的數量大于0,就可以坐下

money = float(input('請輸入公交卡的錢:')) setting = float(input('請輸入座位數:'))if money >= 2:print('可以上車')if setting >= 1:print('請坐下')else:print('請站著') else:print('請下車')請輸入公交卡的錢:2 請輸入座位數:3 可以上車 請坐下

補充:
and not or的優先級
or<and<not

1.1.3 列表

當我們有一百個變量要儲存起來的時候,總不能弄一百個變量啊,怎么辦的,用列表.
我們可以對列表這樣去理解, 就把它當成一個大桶, 當我們有一堆東西需要找個地方臨時存放在一起, 以便后續進行排序, 篩選,提取等操作時, 就弄一個列表, 先放進去.
列表中的元素,沒有數據類型的限制,可以為任何數據類型

s = [1,2,3,4,5,6,7,8,9,10] list1 = [1, 2, 3,'on','go',True,False,None] s2 = ['臨','兵','斗','者','皆','列','陣','在','前']

1.2 循環語句

循環語句的使用場景

這一天老師讓你抄寫一百遍"我錯了"
for循環

for循環for i in range(100):print("我錯了")

while循環

i = 0 while i <= 100:print("我錯了")i += 1

1.2.1 for循環

for循環和編程語言中常見的循環不太一樣,它實際上不是一個循環,而是一個遍歷功能,會依次對一個可迭代的數據中的每一個數據進行操作.

在Python中 for循環可以遍歷任何序列的項目,如一個列表或者一個字符串等。

for循環的格式

for 臨時變量 in 列表或者字符串等:循環滿足條件時執行的代碼

range的使用
range(數字)表示生成0-多少的數組

# 例:list(range(10))表示生成0到9的數 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

range(a,b)表示生成a到b的數

# 例:list(range(10,20))表示生成10到19的數 [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]

range(a,b,c)表示生成a到b的數,間距為c

# 例:list(range(10,20,2))表示生成10到20的偶數 [10, 12, 14, 16, 18]

利用for 循環實現1到100的累加

# 先定一個累加器 n = 0 for i in range(1, 101):# 每次把遍歷出來的i 的值 累加到 n 上面去n += i n

1.2.2 whlie循環

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

案例1

i = 0 while i<5:print("當前第{}次執行循環".format(i+1))print('i={}'.format(i))i += 1當前第1次執行循環 i=0 當前第2次執行循環 i=1 當前第3次執行循環 i=2 當前第4次執行循環 i=3 當前第5次執行循環 i=4

案例2

s = "也可以使用while循環對字符串進行遍歷,不過就需要配合字符串的索引功能了" i = 0 while i < len(s):print(s[i])i += 1 也 可 以 使 用 w h i l e 循 環 對 字 符 串 進 行 遍 歷 , 不 過 就 需 要 配 合 字 符 串 的 索 引 功 能 了

1.2.3打印-1到-20中所有3的倍數

i = -1 while i >=-20:if i%3 == 0:print(i)i -= 1-3 -6 -9 -12 -15 -18

對數字0 每次 加 7 , 然后把這個數字打印出來

一直運行到 這個數字是 100的倍數 停止

i = 0 while (not(i%100 == 0)) or (i == 0):print(i)i += 7 0 7 14 21 28 35 42 49 56 63 70 77 84 91 98 105 112 119 126 133 140 147 154 161 168 175 182 189 196 203 210 217 224 231 238 245 252 259 266 273 280 287 294 301 308 315 322 329 336 343 350 357 364 371 378 385 392 399 406 413 420 427 434 441 448 455 462 469 476 483 490 497 504 511 518 525 532 539 546 553 560 567 574 581 588 595 602 609 616 623 630 637 644 651 658 665 672 679 686 693

1.2.4 break退出本"層"循環

遇到break相當于推出本層循環

name = '我想要去打游戲,不想學習' for i in name:if i == ',':breakprint(i)我 想 要 去 打 游 戲

1.2.5 continue結束本"次"循環

continue的作用:用來結束本次循環,緊接著執行下一次的循環

name = '我想要去打游戲,不想學習' for i in name:# 如果遇到了逗號, 就不打印了if i == ',':continueprint(i)我 想 要 去 打 游 戲 不 想 學 習

注意:

break/continue只能用在循環中,除此以外不能單獨使用

break/continue在嵌套循環中,只對最近的一層循環起作用

1.2.6 練習 尋找水仙花數

題目:打印出所有的"水仙花數",所謂"水仙花數"是指一個三位數,其各位數字立方和等于該數本身。例如:153是一個"水仙花數",因為153=1的三次方+5的三次方+3的三次方。
方法一

# 水仙花數 for i in range(100,1000):a = i // 100b = i // 10%10c = i % 10if i == (a**3+b**3+c**3):print(i)153 370 371 407

方法二

for i in range(100,1000):s = str(i)a = s[0]b = s[1]c = s[2]if int(a)**3 + int(b)**3 + int(c)**3 == i:print(i) 153 370 371 407

總結

以上是生活随笔為你收集整理的03.Python基础--控制流语句-顺序结构-判断结构-循环语句的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。