實驗內容
1.簡單計算器的設計
請設計簡單的“加減乘除”計算器並從鍵盤上輸入數據進行計算
數字的加減乘除,input返回的結果是str類型的,通過截取字符串中的運算符,來提取數字,循環操作,返回結果。具體操作步驟在代碼的註釋裏。
def add(string): # 定義加法
tmp = 0
numbers = []
numbers += string.split("+") # 對用戶輸入的數字以+號做分割,寫入到列表裏。
for i in numbers: # 遍歷列表。
tmp += int(i.strip()) # 先對遍歷的對象i,去除空格後,得出結果tmp = i + tmp
print("{0} = {1}".format(string, tmp)) # 打印結果tmp
def subtraction(string): # 定義減法
numbers = []
numbers += string.split("-") # 對用戶輸入的數字以-號做分割,寫入到列表裏。
tmp = int(numbers[0].strip()) # 取列表的第一個數字給tmp
numbers.pop(0) # 因爲第一個值給了tmp 所以刪除第一個值。
for i in numbers: # 遍歷numbers
tmp -= int(i.strip()) # 得出結果tmp ,每次循環都刪除第一個值然後相減。
print("{0} = {1}".format(string, tmp))
def multiplication(string): # 定義乘法
numbers = []
numbers += string.split("*") # 對用戶輸入的數字以*號做分割,寫入到列表裏。
tmp = int(numbers[0].strip()) # 取列表的第一個數字給tmp
numbers.pop(0) # 因爲第一個值給了tmp 所以刪除第一個值。
for i in numbers: # 遍歷numbers
tmp *= int(i.strip()) # 得出結果tmp ,每次循環都刪除第一個值然後相乘。
print("{0} = {1}".format(string, tmp))
def division(string): # 定義除法
numbers = []
numbers += string.split("/") # 對用戶輸入的數字以/號做分割,寫入到列表裏。
tmp = int(numbers[0].strip()) # 取列表的第一個數字給tmp
numbers.pop(0) # 因爲第一個值給了tmp 所以刪除第一個值。
for i in numbers: # 遍歷numbers
tmp /= int(i.strip()) # 得出結果tmp ,每次循環都刪除第一個值然後相除。
print("{0} = {1}".format(string, tmp))
if __name__ == '__main__': # 定義執行方式,當執行腳本本身,執行如下代碼。
print("******************************")
print(" 計算器")
print("******************************")
chose = input("選擇你要的計算方式,1/加法 ,2/減法,3/乘法,4/除法: ")
if chose == "1":
tmp = input("請輸入你要計算的數字:")
add(tmp)
elif chose == '2':
tmp = input("請輸入你要計算的數字:")
subtraction(tmp)
elif chose == '3':
tmp = input("請輸入你要計算的數字:")
multiplication(tmp)
elif chose == '4':
tmp = input("請輸入你要計算的數字:")
division(tmp)
else:
print("你輸入的有誤,請重新輸入")
測試結果:
如果不按要求輸入會提示錯誤