與使用者互動,格式化輸出,基本運算子
一:與使用者互動
1.第一步獲取使用者輸入
username= input('請輸入您的名字:') # input就是為了獲取使用者輸入,獲取使用者輸入就可以在左側寫東西了
'''將input獲取到的使用者輸入繫結給變數名username''' # 以後可以通過使用username訪問使用者輸入的資料
print(username, type(username))
input獲取到的使用者輸入全部都會轉成(字串)型別
input獲取到的使用者輸入,無論使用者輸入的是什麼樣的資料,都會轉成字串
input獲取到的使用者輸入的資料相當於在一個程式前後加上引號
'[1, 2, 3, 4, 5,]'
2.輸出
預設print功能有一個end引數,該引數的預設值為'\n'(代表換行),可以將end引數的值改成任意其他字元print(123, end='')print(456)print(123, end='&')print(456)
- print()
1.括號可以使用逗號隔開多個元素一起列印
2.自帶end引數 可以控制列印的排版
print(123,end='\n')
print(123,end='$')
二:格式化輸出
1.將字串中某些內容替換掉再輸出就是格式化輸出
- 就是提前定義好一些文字,把後期可能需要改變的地方先給它站個位置,用下劃線也好,符號也好,後期在給它做一些替換,這就叫格式化輸出。
res = '親愛的%s你好!你%s月的話費是%s,餘額是%s'
print(res % ('jason', 11, 100, 99999999999))
print(res % ('tony', 11, 200, -100))
print(res % ('kevin', 11, 500, -999))
""" - 先使用佔位符佔位 %s
- 再使用%按照位置一一替換
"""
2.換行符
3.# %d只能給數字佔位(瞭解)print('%08d' % 123)print('%08d' % 1)print('%08d' % 666)print('%08d' % 6666666666666)
三:運算子
算術運算子
// % **
比較運算子
== 判斷值是否相等
!= 值不等於
賦值運算子
=
增量賦值(偷懶)
n = 666
n += 1 n = n + 1
n -= 1 n = n - 1
n *= 1 n = n * 1
n /= 1 n = n / 1
鏈式賦值(偷懶)
x = 666
y = x
z = y
x = y = z = 666
交叉賦值(筆試題)
m = 10
n = 999
方式1 利用中間變數
tmp = m
m = n
n = tmp
print(m, n) 999 10
方式2 交叉賦值
m, n = n, m
print(m, n) 999 10
解壓賦值
name_list = ['tony', 'kevin', 'long', 'jack']
name1 = name_list[0]
name2 = name_list[1]
name3 = name_list[2]
name4 = name_list[3]
解壓賦值用法
name1, name2, name3, name4 = name_list 左右兩邊個數相等
name1, name2, name3 = name_list 少一個不行 False
name1, name2, name3, name4, name5 = name_list 多一個也不行 Ture
如果列表裡的元素很多,這樣用也很麻煩,下面就有更好的方法來取列表裡的值
進階用法:可以打破上述規律 特殊符號 *號
name1, *_, name2 = name_list
print(name1, _, name2) tony ['kevin', 'long'] jack
'''
號可以接受多餘的元素 組織成列表賦值給後面的變數名
下劃線單獨作為變數名 通常表達的意思指向的值沒有啥用,也可以用其他變量表示,比如other
'''
image
四:邏輯運算子
在python邏輯運算子就三個
and 與
用於連線多個條件並且多個條件必須都成立才可以
or 或
用於連線多個條件並且多個條件只要有一個成立即可
not 非
取反
print(2 > 1 and 1 != 1 and True and 3 > 2)
print(2 > 1 or 1 != 1 or True or 3 > 2)
print(not True)
"""三個連線符號如果混合使用 是有優先順序的"""
但是我們在編寫的時候應該人為的規定好優先順序