# 代碼是從上往下一次執(zhí)行的
# import是導(dǎo)入一個(gè)模塊/包的關(guān)鍵字
# random模塊中提供很多和隨機(jī)數(shù)相關(guān)的功能
import random
# python中的分之結(jié)構(gòu)只有if結(jié)構(gòu),沒有switch
# 1.if就是在程序用來做判斷的(需要在滿足某個(gè)條件的時(shí)候,才做什么事情的情況下就考慮用if)
# randint(m,n) ---> 產(chǎn)生一個(gè)m到n的隨機(jī)數(shù)(整數(shù))
num = random.randint(0, 10)
# print(num,'是偶數(shù)')
# 2.if結(jié)構(gòu):
"""
a.語法:
if 條件語句:
執(zhí)行語句塊
b.說明
if -> 是python的關(guān)鍵字
條件語句 -> 要求最終有一個(gè)值,可以是一個(gè)字面量,也可以是一個(gè)變量...一般情況下要求結(jié)果是個(gè)布爾值
: -> 固定寫法
執(zhí)行語句塊? -> 可以是一行或者多行代碼。這個(gè)代碼中的代碼必須和前面中的if保持一個(gè)縮進(jìn)
c.執(zhí)行過程: 先判斷條件語句的結(jié)果是否為True,為True就執(zhí)行冒號(hào)后面的執(zhí)行語句塊。
? ? ? ? ? 否則就不執(zhí)行,直接執(zhí)行if結(jié)構(gòu)后面的其他語句。
d.注意:在滿足條件后才執(zhí)行的代碼寫在if中,不管條件是否成立都要執(zhí)行的代碼就寫在if的外面。
? ? ? 但是如果有if,if里面至少要有一條語句
"""
print(num)
if num&1 == 0:
print('是偶數(shù)')
print('======')
# 練習(xí):判斷一個(gè)字符串中隨機(jī)位置上的一個(gè)字符是否是字母,如果是就打印'該字符是字母',
#? ? ? 不管是不是字母都打印取出來的字符
str1 = '26hhj88(jk'
index = random.randint(0, len(str1)-1)
char = str1[index]
print(char)
# 判斷是否是字母
# if 'a'<=char<='z' or 'A'<=char<'Z':
# print('該字符是字母')?
if char.isalpha():
print('該字符是字母')?
# 3.if-else結(jié)構(gòu)
"""
語法:
if 條件語句:
語句塊1
else:
語句塊2
執(zhí)行過程: 先判斷條件語句是否為True,如果為True就執(zhí)行語句塊1,否則執(zhí)行語句塊2
"""
num = 11
if num%2 == 0:
print('是偶數(shù)')
else:
print('是奇數(shù)')
print('是數(shù)字')
# 4.if-elif-else結(jié)構(gòu)
"""
語法:
if 條件語句1:
語句塊1
elif 條件語句2:
語句塊2
else:
語句塊3
執(zhí)行過程: 先判斷條件語句1是否成立,
? ? ? ? 如果成立直接性質(zhì)語句塊1,然后整個(gè)if結(jié)構(gòu)結(jié)束。
? ? ? ? 如果不成立,再判斷條件語句2是否成立。
? ? ? ? 如果條件語句2成立,就執(zhí)行語句塊2,然后整個(gè)if結(jié)構(gòu)結(jié)束。
? ? ? ? 如果條件語句2不成立,執(zhí)行語句塊3
注意:if-elif-else結(jié)構(gòu)中,elif可以根據(jù)情況有多個(gè)。else可以省略,如果有else,else寫在最后
"""
# 練習(xí):隨機(jī)產(chǎn)生0-100的年齡值,根據(jù)年齡的不同確定人處于哪個(gè)階段。。。
# 0-3歲 ---> 幼兒? 4 - 12歲? ---> 兒童? 13 - 18 --> 少年? 19 --> 28 青年? 29以上 ----> 老年
age = random.randint(0, 100)
print(age)
if age<=3:
print('幼兒')
elif age<=12:
print('兒童')
elif age<=18:
print('少年')
elif age<=28:
print('青年')
else:
print('老年')
# 練習(xí)2:成績(grade)和操評(píng)(scrore)
# 成績大于4并且操評(píng)大于等于90 ---> 一等獎(jiǎng)學(xué)金
# 績點(diǎn)在3.5到4,并且操評(píng)大于90 ----> 二等獎(jiǎng)學(xué)金
# 績點(diǎn)在3到3.5,并操大于90? ----> 三等獎(jiǎng)學(xué)金
# 其他情況沒有獎(jiǎng)學(xué)金
grade = 4
scrore = 90
if grade>=4 and scrore >= 90:
print('一等獎(jiǎng)學(xué)金')
elif 4 > grade >= 3.5 and scrore >= 90:
print('二等獎(jiǎng)學(xué)金')
elif 3 <= grade < 3.5 and scrore >= 90:
print('三等獎(jiǎng)學(xué)金')
else:
print('沒有獎(jiǎng)學(xué)金')?
# 5.if嵌套
# 在分之結(jié)構(gòu)中,我們可以if,elif或者else后面嵌套一個(gè)或者多個(gè)其他的if語句
# 練習(xí):判斷一個(gè)數(shù)是否是偶數(shù),如果是打印'是偶數(shù)',
#? ? ? 并且判斷這個(gè)偶數(shù)能不能被4整除,如果能打印'是4的倍數(shù)'否則打印'不是4的倍數(shù)'
#? ? ? 如果是奇數(shù),打印奇數(shù)的最后一位 / 判斷最后一位是否是1
print('===============')
num = random.randint(0,100)
print(num)
if num & 1 == 0:
print('是偶數(shù)')
# 判斷是偶數(shù)的時(shí)候,是否能夠被4整除
if num % 4 == 0:
print('是4的倍數(shù)')
else:
print('不是4的倍數(shù)')
else:
print('是奇數(shù)')
last = num % 10? # 取個(gè)位上的數(shù)
print(last)
# 判斷是奇數(shù)的時(shí)候最后一位是否是1
if last == 1:
print('最后一位是1')
print('!!')