1、變量
變量的概念?
- 變量是計算機內存中的一塊區域,存儲規定范圍內的值,值 可以改變,通俗的說變量就是給數據起個名字。
- 變量命名規則
•變量名由字母、數字、下划線組成要符合標識符的命名規范
• 數字不能開頭
• 不能使用關鍵字
變量的運算
- 變量運算和正常的四則運算一樣,值得注意的是在勻速那過程中含有浮點數,運算后輸出的值也是浮點數類型。
原理:變量在內存中就是一塊特定的存儲區域(地址)。
- 兩個引用指向同一 int 數據
a=10 b=10 print(id(a),id(b))
- 結果:地址一樣
- 兩個引用指向同一個str數據
a='slbsvbsbh' b='slbsvbsbh' print(id(a),id(b))
- 結果:地址一樣
- 兩個引用指向同一個list數據
a = [1,2,3] b = [1,2,3] print (id(a),id(b))
- 結果:地址不一樣
list1 = [1, 2, 3] list2 = list1.copy() print(id(list1), id(list2))
- 結果:地址不一樣
- 運算符用於執行程序代碼運算,會針對一個以上操作數項目來進行運算。例如:2+3,其操作數是2和3,而運算符則是“+”
• 算術運算符
• 賦值運算符
• 比較運算符(關系運算符)
• 邏輯運算符
• 條件運算符(三元運算符)
• 加法運算符 表現形式 +
• 減法運算符 表現形式 -
• 乘法運算符 表現形式 *
• 除法運算符 表現形式 /
• // 整除,只會保留計算后的整數位,總會返回一個整型
• % 取模,求兩個數相除的余數
• ** 冪運算,求一個值的幾次冪
賦值運算符的特殊寫法 x = x + 3 其實是和 x += 3 是一樣的
• += (x+= 3 相當於 x = x + 3 )
• -= (x -= 3 相當於 x= x - 3 )
• *= (x = 3 相當於 x = x 3 )
• **= (x **= 3 相當於 x = x ** 3 )
• /= (x /= 3 相當於 x = x/ 3 )
• //= (x //= 3 相當於 x = x // 3 )
• %= (x %= 3 相當於 x= x % 3 )
• 比較運算符用來比較兩個值之間的關系,總會返回一個布爾值.如果關系成立,返回True,否則返回False
• > 比較左側值是否大於右側值
• >= 比較左側的值是否大於或等於右側的值
• < 比較左側值是否小於右側值
• <= 比較左側的值是否小於或等於右側的值
• 特殊的比較方式
• == 比較兩個對象的值是否相等
• != 比較兩個對象的值是否不相等
• is 比較兩個對象是否是同一個對象,比較的是對象的id
• is not 比較兩個對象是否不是同一個對象,比較的是對象的id
3.6.1 not 邏輯非
• not可以對符號右側的值進行非運算,對於布爾值,非運算會對其進行取反操作,True變False,False變True
3.6.2 and 邏輯與
• and可以對符號兩側的值進行與運算。 只有在符號兩側的值都為True時,才會返回True,只要有一個False就返回False
• 與運算是找False的,如果第一個值為False,則不再看第二個值
3.6.3 or 邏輯或
• 或運算兩個值中只要有一個True,就會返回True
• 或運算是找True的
3.6.4 非布爾值的與或運算
-
當我們對非布爾值進行與或運算時,Python會將其當做布爾值運算,最終會返回原值
• 非布爾值與運算的規則
• 與運算是找False的,如果第一個值是False,則不看第二個值。如果第一個值是False,則直接返回第一個值,否則返回第二個值 -
非布爾值或運算的規則
• 或運算是找True的,如果第一個值是True,則不看第二個值。如果第一個值是True,則直接返回第一個值,否則返回第二個值
語法:
if 條件表達式: 語句1 else: 語句2 如: a = 3 if a <= 3: a = a+1 else: a = 0
- 條件運算符在執行時,會先對條件表達式進行求值判斷
如果判斷結果為True,則執行語句1,並返回執行結果
如果判斷結果為False,則執行語句2,並返回執行結果
1.a,b = 6, 8 我想讓a=8 b=6我該怎么辦?用2種方式實現
a,b = 6,8 # 方法一: c = a a = b b = c print(a,b) # 方法二: list = [a,b] a = list[1] b = list[0] print(a,b)
- 結果:
方法一:
方法二:
2. 完成字符串的逆序以及統計
• 設計一個程序,要求只能輸入長度低於31的字符串,否則提示用戶重新輸入
• 打印出字符串長度
• 使用切片逆序打印出字符串
n = str(input("請輸入字符串:")) if len(n)<31: print(len(n),n[::-1]) else: print("輸入的內容有誤,請檢查后重新輸入!!!")
- 結果:
3. 要求從鍵盤輸入用戶名和密碼,校驗格式是否符合規則,如果不符合,打印出不符合的原因,並提示重新輸入
• 用戶名長度6-20,用戶名必須以字母開頭
• 密碼長度至少6位,不能為純數字,不能有空格
while True: #獲取用戶名輸入 username = input("請輸入用戶名:") if username == 'quit': break # 校驗用戶名格式是否在6-20之間,查看用戶名是不是以字母開頭 if 6>len(username) or len(username)>20 or username[0] not in "abcdefghijklmnopqrstuvvwxyaABCDEFGHIJKLMNOPQRTSUVWXYZ": print(username[0]) print("請輸入有效的用戶名,長度6-20,且必須以字母開頭") print("請重新輸入!!!") continue # 獲取密碼輸入 passwd = input("請輸入密碼:") # 校驗密碼格式6位,不能為純數字,不能有空格 if len(passwd) < 6 or passwd.isdigit() or " " in passwd: print("密碼長度至少6位,不能為純數字,不能有空格") print("請重新輸入") # 如果不正確直接重新開始 ,所以使用continue continue print("校驗成功!!,請輸入quit退出。")
- 結果:
本文為學習筆記,轉載請標明出處,本文僅供交流學習,請勿用於非法途徑,希望本文對大家有幫助。
僅是個人意見,如有不足之處或者侵權,請留言