使用者互動
【一】程式與使用者之間互動
學使用者互動的目的就是為了和程式之間交流
【二】python中如何互動
【1】輸入
input語法
(1)彈出輸入框
input()
(2)提示資訊
print("請輸入使用者名稱")
input()
(3)提示輸入資訊並且獲取到輸入的資訊
username= input("請輸入使用者名稱:》》》")
print(username)
(4)輸入的內容永遠是字串
username= input("請輸入 使用者名稱:>>>")
print(username,type('username'))
# 輸出型別為 str
(5)資料之間進行運算需要轉換資料型別
num_1 = input()
num_2 = input()
# result = num_1 + num_2
result = int(num_1) + int(num_2)
【2】輸出
直接列印變數或字串或其他
print 語句允許存放多個變數和變數值,但是每一個元素之間要用逗號隔開
name = "yi"
age = 18
print(f"my name is", name,"my age is", age)
print可以修改預設尾綴
print預設自帶一個結束符(換行符),我們可透過 end 引數修改預設的尾綴
print(name, end='*')
print(name, end='&')
算術運算子
【一】算術運算
+ - * / % // **
# 加
print(1 + 1)
# 減
print(1 - 1)
# 乘
print(2 * 2)
# 除
print(4 / 2)
# 取餘
print(5 % 2)
# 取商
print(5 // 2)
【二】比較運算子
> < >= <= == !=
python中相等是==
print(1 == 1)
【三】賦值運算子
= += -= *= /= %= //= **=
# += 增量賦值
num_one = 2
num_one += 1 # num_one = num_one + 1
print(num_one)
num_two = num_one + 1
num_two += num_one
print(num_two)
# 鏈式賦值
a = b = c = 6
print(a, b, c)
# 交叉賦值
x = 8
y = 9
x, y = y, x
print(x, y)
9 8
# 解壓賦值
a, b = (1, 2)
print(a, b)
# 位置變數名少了不行
# a, b = (1, 2, 3)
# 位置變數名多了不行
# a, b, c, d = (1, 2, 3)
使用下劃線代替多餘的元素
_, b, _ = (1, 2, 3)
print(b)
2
【四】邏輯運算子
與 或 非
and or not
兩真為真 有真為真 取反
優先順序 not > and >or
print(3 > 4 and 4 > 3 or 1 == 3 and 'x' == 'x' or 3 > 3)
# False and True or Flase and True or Flase
# false or false or flase
# false
【五】成員運算子
in not in
# 用來判斷當前成員是否在另一個成員中,並且返回的值為布林值
num_list = [1, 2, 3, 4, 5]
print(1 in num_list)
print(6 in num_list)
print(6 not in num_list)
【六】身份運算子
# 判斷一個物件是否是另一個物件
# 貓是貓 貓不是狗
a = [1, 2, 3]
print('a', id(a))
b = a
print('b', id(b))
c = [1, 2, 3]
print('c', id(c))
# 因為 a 是b來的所以a是b
print(a is b)
# 因為a 和 c 是兩個獨立的記憶體空間,所以 a 不是 c
print(a is c)
print(a is not c)
== 和 is 的區別
== 比較的是 值是否相等
is 比較的是 記憶體空間地址
兩個變數的值 一樣 , 記憶體空間 地址不一定一樣
name = "dream"
age = "dream"
print(id(name), id(age))
# 2341970614832 2341970614832
id是區分可變型別和不可變型別的重要指證
流程控制語句
# 用來控制程式執行的條件
# 控制條件的方式有很多
# 流程結構:順序結構(依次鄉下執行) 分支結構(相當於給了兩個條件來進行判斷) 迴圈結構(直到條件為否才結束當前迴圈)
【1】順序結構
# 程式按照順序依次執行,直到報錯或者程式條件為否的情況才會終
【2】分支結構
# 可以在執行程式的過程中加一些判斷條件
# 只有判斷條件為真的情況才會執行程式碼
# 如果我的分數 > 90 列印優秀
單分支結構
格式:
if 條件:
程式碼
score = 89
if score > 90:
print(f"當前成績為 {score} , 評級為優秀!")
print(f"111")
# 單分支結構會依次向下執行程式碼
# 並且在遇到條件時進行判斷,如果條件為真則執行當前程式碼體
雙分支結構
格式:
if 條件:
程式碼體
else:
程式碼體
score = 89
if score >= 90:
print(f" {score} 優秀")
else:
print("不優秀")
print(11)
# 雙分支條件:有一個條件做約束,如果當前條件不符合,則會進入到另一個條件的程式碼體中
多分支結構
格式:
if 條件:
程式碼體
elif 條件:
程式碼體
elif 條件:
程式碼體
elif 條件:
程式碼體
else:
程式碼體
score = 69
if score >= 90:
print(f"{score} :>>>> 優秀")
elif score >= 80:
print(f"{score} :>>>> 良好")
elif score >= 70:
print(f"{score} :>>>> 及格")
else:
if score >= 60:
print(f"差及格還有一丟丟")
else:
print(f"{score} :>>>> 不及格")
【3】迴圈結構(while)
# 迴圈結構
# 一個條件不符合我當前狀態的時候我可能還會二次判斷
# 密碼嘗試上 可以進行多次密碼的嘗試
# while 條件(迴圈截止的條件):
# 程式碼體
# 達到某個條件的時候結束當前迴圈
# continue
# 結束整個迴圈
# break
# while True:
# score = int(input("請輸入成績:》》》》"))
# if score >= 90:
# print(f"優秀")
# else:
# print(f"不及格")
count = 0
while count <=9:
count += 1
if count == 1:
print("這是 1 ")
elif count == 3:
print("這是 3 ")
# 結束本次迴圈
continue # 走到continue 以後就不會繼續鄉下執行程式碼,而是回到了 while 條件重新進入當前迴圈
elif count == 5:
print(f"這是 :>>> {count}")
break # 類似於程式出現錯誤直接將當前程式打斷
print(count)
# 做登入的三次嘗試