Python 入門學習02 —— 變數、註釋及 if 條件語句的使用
阿新 • • 發佈:2019-01-10
一、變數
變數是指值會發生變化的的量,與常量相對。它的存在是為了儲存日後的結果,節省程式運算過程中的一些時間。
- 宣告變數的格式
變數名 = 變數
age = 123 name = "Springer" a = b = 5
- 檢視變數的格式
使用 type() 函式可以檢視變數的型別
age = 18 print( type(age))
結果
- 變數的命名規範
- 要具有描述性,看見變數名稱就可以明白其要表達的含義。
- 變數名只能以下劃線、數字、字母組成,不可以是空格或特殊字元(例:#*,.¥~!)。
- 不能以中文為變數名( Python 中支援以中文為變數名,但是不要使用)。
- 不能以數字開頭。
- 保留字元(即 Python 中本身採用的字元)是不能被使用的。
- 在 Python 中所有的變數都是可變的,為了區分常量,用全部大寫的變數名來代表此變數為常量。
name_length school_name message AGE STUDENTNUM
二、記憶體釋放
python 不像 C++、Java 等語言一樣,他們可以不用事先宣告變數型別而直接對變數進行賦值。對 Python
Python 引用了記憶體計數這一簡單的計數來控制垃圾回收。當記憶體中有不再使用的部分時,垃圾收集器就會把他們清理掉。它會去檢查那些引用計數為 0 的物件,然後清除其在記憶體的空間。當然除了引用計數為 0 的會被清除,還有一種情況也會被垃圾收集器清掉:當兩個物件相互引用時,他們本身其他的引用已經為 0 了。
三、註釋
- 單行註釋
# 這是一個註釋 name = "Springer" #這是一個註釋 # 這是一個註釋
- 多行註釋
'''
三對單引號,Python多行註釋符。
三對單引號,Python多行註釋符。
'''
"""
三對雙引號,Python多行註釋符。
三對雙引號,Python多行註釋符。
"""
四、條件語句的使用
- input()
input() 接收的所有資料都是字串,即使你輸入的都是數字,但依然會被當成字串來處理。 - if 條件語句
if 判斷條件1:
執行語句1……
elif 判斷條件2:
執行語句2……
elif 判斷條件3:
執行語句3……
else:
執行語句4……
注:在使用 if 條件語句時,要注意首行縮排,一般情況下以四個空格為一個縮排標準。一個 tab 符不等於四個空格。
五、判斷一個字串的組成
- 檢測字串是否只由數字組成。
isdigit()
- 檢測字串是否只由字母組成。
isalpha()
- 檢測字串是否由字母和數字組成。
isalnum()
#!-*- coding:GBK -*-
str_num = "18"
str_english = "abc"
str_hybrid = "a1b8c"
print("------------", str_num, "-------------")
print(str_num, "是否只由數字組成", str_num.isdigit())
print(str_num, "是否只由字母組成", str_num.isalpha())
print(str_num, "是否由字母和數字組成", str_num.isalnum())
print("------------", str_english, "-------------")
print(str_english, "是否只由數字組成", str_english.isdigit())
print(str_english, "是否只由字母組成", str_english.isalpha())
print(str_english, "是否由字母和數字組成", str_english.isalnum())
print("------------", str_hybrid, "-------------")
print(str_hybrid, "是否只由數字組成", str_hybrid.isdigit())
print(str_hybrid, "是否只由字母組成", str_hybrid.isalpha())
print(str_hybrid, "是否由字母和數字組成", str_hybrid.isalnum())
結果
注意
在使用 isdigit() 時會有一個坑,那就是 Number = input(“請輸入數字:”) 即從控制檯上獲取一串值那麼就有 python input() 相當於 eval( raw_input( prompt ) ) ,用來獲取控制檯的輸入。
raw_input() 將所有輸入作為字串看待,返回字串型別。而 input() 在對待純數字輸入時具有自己的特性,它返回所輸入的數字的型別( int , float )。
當輸入全數字字串時,這時候在使用 Number.isdigit() 就會報錯(AttributeError: ‘int‘ object has no attribute ‘isdigit‘),已經是 int 型別的值,在使用該函式,肯定會報錯。
那麼最好是選用 raw_input() 函式,作為動態輸入方法,否則就會掉入坑。
六、一個簡單的樣例
#!-*- coding:GBK -*-
userName = ""
password = ""
password_again = ""
password_user = ""
input_num = 1
userName = input("請輸入您的使用者名稱:")
print("使用者名稱設定成功!")
password = input("請輸入您設定的密碼:")
password_again = input("請確認您設定的密碼:")
while password_again != password:
password_again = input("兩次密碼不一致,請重新設定密碼:")
password = input("請輸入新的密碼:")
password_again = input("請確認您設定的密碼:")
else:
print("密碼設定成功!")
password_user = input("請輸入登入密碼:")
while password_user != password:
password_user = input("您輸入的密碼有誤,請重新輸入:")
if input_num < 2:
input_num += 1
else:
print("您已連續輸錯三次,賬戶已凍結!")
break
else:
print(userName + "先生/女士,歡迎您!")
本文內容部分取自百度內容,如有雷同部分請見諒。