Python基礎(二)

1、格式化輸出

------------ info of 張三 -----------
Name : 張三
Age : 22
job : IT
------------- end -----------------

一、第一種寫法

name = input("Name:")
age = input("Age:")
job = input("Job:")

msg = '''
------------ info of %s --------------- # %s表明一個佔位符
Name : %s    #表明name
Age :  %s    #表明age
Job :  %s    #表明job
------------- end -----------------
''' % (name,name,age,job) # % 號把前面的字符串與後面變量關聯起來
print(msg)

注:%s字符串的佔位      %d 數字的佔位     %f 浮點數        字符串 %(數據)python

二、第二種寫法

name = input("Name:")
age = input("Age:")
job = input("Job:")

msg = '''
------------ msg of %s  -----------
Name : {name}
Age :  {age}
Job :  {job}
------------- end -----------------
'''
print(msg)

注:必須是python3.5以上版本才能夠使用app

int(str)  #字符串轉換成int                    str(int)  #int轉換成字符串函數

2、基本運算符

一、算數運算

二、比較運算

三、邏輯運算

and    而且, 左右兩端同時爲真, 結果才能是真.
or 或者, 左右兩端有一個是真, 結果就是真
not 非, 非真即假, 非假即真

優先級:      () > not > and > orspa

四、賦值運算

a=10,b=20code

五、成員運算

in 是否在xxx裏面
content = input("請輸入你的評論")
if "張三" in content or '李四' in content:
print('你輸入的內容不合法')
else:
print("評論成功")
not in 是否不在xxx裏面

 3、基本數據類型

一、int ==> 整數

        在python3中全部的整數都是int類型,但在python2中若是數據量比較大,會使用long類型,在python3中不存在long類型對象

二、str ==> 字符串

        字符串是不可變的對象, 因此任何操做對原字符串是不會有任何影響的blog

在python中,凡是用引號引發來的數據都是字符串
單引號,雙引號,三引號引發來沒有任何區別
name = '張三'
name = "張三"
name = '''張三'''

①切片、索引

索引:索引就是下標,下標從0開始索引

s = "hello"

# 從索引0開始取完字符串中每個字符
print(s[0])
print(s[1])
print(s[2])
print(s[3])
print(s[4])

切片:ip

字符串[start:end] 從start到end拿到數據 ,end取不到
字符串[start:end:step] 從start到end拿數據,每step個拿出來一個rem

step:   + 左到右     - 右到左

s = "Java,Python,Php,C++"
print(s[2:11:2])  #從第二個開始取,取到11,每兩個取一個
print(s[:4])       # Java 從開始切
print(s[4:])       # 從4切到結束
print(s[:])        # 從頭切到尾

②字符串的操做

upper() 轉化成大寫. 在忽略大小寫的時候
###用戶名密碼登陸應用場景###
verify_code = "Axbn" 
uv_code = input(f"請輸入驗證碼{verify_code}:")
if verify_code.upper() == uv_code.upper():  # 忽略大小寫
     print("驗證碼正確")
else:
     print("驗證碼錯誤")
strip() 默認去掉左右兩端的空白
###用戶輸入密碼應用場景###
uname = input("請輸入用戶名:").strip() # 用戶輸入的內容必定要過濾掉左右兩邊的空白
upwd = input("請輸入密碼:").strip()
if uname == "alex" and upwd == "123":
    print("登陸成功")
else:
    print("登陸失敗")
replace() 字符串的替換
msg = input("請輸入你的信息:")
if "黃賭毒" in msg:
    msg = msg.replace("黃賭毒", "***")
print(msg)
split() 字符串切割, 結果是列表
s = "Hello Word Im superman"
res = s.split() # 默認用空白切割
print(res) 
startswith() 判斷是否以xxx開頭
s = "alex 特別喜歡他的特斯拉"
print(s.startswith("alex")) # 判斷是否以alex開頭
print(s.endswith("特斯拉")) # 判斷是否以特斯拉結尾
find() 查找字符串中xxx字符的位置. 若是找不到返回-1
s = "Hello Word"
print(s.find("z")) # 返回索引, 若是沒有, 返回-1
len() 內置函數,字符串長度
s = "Hello Word"
print(len(s)) # len叫內置函數.和print同樣

三、bool==>判斷真假: True, False

bool=>int       int(bool) True是1, False是0
str => bool     bool(str) 空字符串串是False, 不空是True
bool => str     str(bool) 把bool值轉換成相應的""

四、list==> 存儲大量數據:用[ ]表示

和字符串差很少. 也具備索引和切片

①增

append()        追加,添加在列表的末尾

l = ["張三", "李四"] 
l.append("劉能")
print(l)  #列表是能夠發生改變的

insert()          插入,在xxxx位置插入一個元素

l = ["張三", "李四"]
l.insert(1, "王五") #在索引1前面,也就是李四前面插入"王五"
print(l)

extend()       迭代新增,合併列表

l = ["張三", "李四"]
s1 = ["王五","趙六"]
l.extend(s1)
print(l)

②刪

pop()             刪除,指定索引刪除,默認刪除最後一個

l = ["張三", "李四","王五","趙六"]
l.pop()
print(l)

remove()       刪除某個指定元素
del list[3]
clear()            清空列表

count()          計數

③改:使用索引去修改

l = ["abc", "李四","王五","趙六"]   #把ABC變大寫
l[0] = l[0].upper()
print(l)

④查:直接用索引查找,使用for循環能夠遍歷列表

lst = ["abc", "李四","王五","趙六"]
for n in lst:
    print(n)

例題:讓用戶輸入一個加法運算: 3+8+4+6+9 想辦法完成數學運算

s = input("請輸入一個加法運算:")
lst = s.split("+")
print(lst)

sum = 0
# 開始循環
for item in lst:
    sum += int(item)
print(sum)

五、tuple=> 元組:不可變列表,只讀

適用場景:放一些不進行修改的數據,元組用()表示,空元組必須用tuple()來建立

注: 若是元組只有一個元素. 必須在末尾添加一個逗號

六、dict==> 字典:在存儲數據的時候必須使用key:value的形式進行存儲

注:key不能夠重複,value沒有要求,而且要求key必須可哈希-> 不可變(int, str, tuple, bool, float)

①增

直接用新key添加

dic = {}           # 空字典 dict()
dic["1"] = "張三"
dic["2"] = "李四"
dic["1"] = "王五"   # key 不能夠重複. 會把數據覆蓋掉

setdefault(key, value) 若是key存在, 不新增. 不存在, 新增. 最後都查詢

dic = {} # 空字典 dict()

dic["1"] = "張三"
dic["2"] = "李四"
dic.setdefault("1","趙六")
dic.setdefault("3","趙六")
print(dic)

②刪

1. pop(key)       #指定key刪除
2. popitem()     #刪除最後一個.
3. del dic[key]  #指定key刪除
4. clear()           #清空字典

③改

dic[老key] = 新value

④查

get(key)      #使用key獲取value
dic[key]      #查詢, 若是key不存在. 會報錯

循環:
for k in dic:
k
dic[k]

for k, v in dic.items():
print(k)
print(v)

七、set==> 集合:保存大量數據. 不能夠重複. 其實就是不保存value的dict

相似dict存儲,只放key,可哈希,不可變,不重複,無序 {}能夠表示set集合
set() 建立空集合,幫助咱們去除重複

①添加:add()

s = set()
s.add("張三")

②刪除:remove()

s = set()
s.add("張三")
s.add("李四")
s.remove("張三")

③列表去重

lst = ["張三", "李四", "張三", "李四", '王五']
s = list(set(lst))
print(s)

④for循環

lst = ["張三", "李四", "張三", "李四", '王五']

new_lst = []
for item in lst:
  if item not in new_lst:
         new_lst.append(item)
print(new_lst)
相關文章
相關標籤/搜索