安裝pycharm專業版,不要漢化python
要想寫的代碼支持linux和2.0版本須要在開頭加上註釋linux
#/usr/bin/env pythongit
#-*- coding:utf-8 -*-api
運算符app
結果是值ide
算數運算spa
a = 10*10code
賦值運算orm
a = a+1 即a+=1對象
結果是布爾值(返還真或者假)
比較運算
a = 1>5
邏輯運算
a = 1>6 or 1==1
成員運算
a = "tom" in "l"
基本數據類型
str用法:
首字母變大寫
test = "tom" v = test.capitalize() print(v) # 結果:Tom
全部的變小寫,有兩種方式,casefold和lower
test = "TOM" v = test.casefold() v = test.lower() print(v) #結果:tom
設置寬度,並將內容居中,*表明吧剩下的20個填充
test = "tom" v = test.center(20,"*") print(v) # 結果:********tom*********
去字符串中尋找,尋找子序列出現的次數
test = "tomtomtomtom" v = test.count("to") # print(v)
以什麼什麼開頭什麼什麼結尾
test = "tomjerry" v = test.endswith("to") #不是以to結尾,返回值爲false v = test.startswith("to")#是以to開頭,返回值爲True print(v)
從開始日後找,找到第一個後,獲取其未知
test = "tomjerry" v = test.find("p") print(v) 結果爲3 從第三個開始出現J若是找不到會返回值-1 test = "tomjerry" print(test.index("j"))#若是找不到j會報錯
格式化,將一個字符串中的佔位符替換爲指定的值
test = "name{n},age{a}" v = test.format(n="tom",a=106) print(v) 結果:nametom,age106
字符串中是否只包含字母和數字
test = "tom19" v = test.isalnum() 結果爲true print(v)
斷句
test = "1234567\t9" v = test.expandtabs(6) print(v,len(v)) 結果:1234567 9 13
字符串中是否包含字母漢字
test = "湯姆jerry" v = test.isalpha() print(v) 結果ture
是否包含數字
test = "二" v1 = test.isdecimal() #阿拉伯 v2 = test.isdigit() #阿拉伯 ② v3 = test.isnumeric() #阿拉伯 ② 二 print(v1,v2,v3)
是否存在不可顯示的字符
#\t 製表符 #\n 換行 test = "tom\njerry\ttom\njerry\t" v= test.isprintable() print(v) # 結果false 由於存在\n \t
判斷是否全是空格
test = " " v = test.isspace() print(v) # 結果true
判斷是不是標題
test = "Tom and Jerry" v1 = test.istitle() # 結果: False print(v1) # v2 = test.title() # print(v2) #結果:Tom And Jerry 變成標題格式 v3 = v2.istitle() print(v3) #結果:ture
將字符串中的每個元素按照指定分隔符進行拼接
test = "tomjerry" v= "_".join(test) print(v) # 結果:t_o_m_j_e_r_r_y
判斷是否所有是大小寫 和 轉換爲大小寫
test = "tOM" v1 = test.islower() v2 = test.lower() print(v1, v2) v1 = test.isupper() v2 = test.upper() print(v1,v2)
移除指定字符串
test = "tom" #v = test.lstrip("t") 去掉t v= test.strip("9") print(v)
對應關係替換
test = "tomjerry" test1 = "12345678" v ="jason,enbo" m = str.maketrans("tomjerry","12345678") new_v = v.translate(m) print(new_v)
分割爲三部分
test = "tomjerry" v = test.partition("e")#('t', 'o', 'mjerry') v1 = test.rpartition("e") print(v)
分割爲指定個數
test = "tomjerry" v = test.split("m",2) #'to', 'jerry's=吧m去掉剩下的分爲兩部分 print(v)
只能根據true false是否保留換行
test = "tom\njerry\nnatasha" v = test.splitlines(False) #['tom', 'jerry', 'natasha'] print(v)
# test = "backend 1.1.1.1" # v = test.startswith("b") 是否以b開頭 # v = test.endswith("1")是否以1結尾 返回true和false值 # print(v)
大小寫轉換
# test = "Tom" # v = test.swapcase() #tOM 大小寫轉換 # print(v)
字母,數字,下劃線
# a = "tom_231" # v= a.isidentifier() #判斷字母數字下劃線 true或者false # print(v)
將指定字符串替換爲新的字符串
# test = "tom" # #v = test.replace("tom","jerry") #將tom替換爲jerry # print(v)
七個經常使用的:
join split find strip upper lower reolace
for循環:
# name = "tom" #一個一個字符輸出 t # for test in name: o # print(test) m # text = [5] # index = 0 # while index <len(text): # v = text[index] # print(v) # index+=1 # print("========")
索引下標就是 tom 012 中的012就是索引 0對應t 1對應o 2對應m
# text = "tom" # v = text[2] # print(v)
切片
# text = "tom" 去除1和2 的值 # v = text[1:3] # print(v)
獲取長度 len 獲取當前字符串有幾個字符組成
# text = "tom" # v = len(text) #3個 # print(v)
range獲取連續或者不連續的數字 只有for循環的時候才顯示
# v = range(0,100,5) #0 5 10 15 20 。。。 # for item in v: # print(item)
字符串一旦建立不可修改,一旦修改或者拼接,都會從新生成字符串
# text = "tom" # age = "20" # info = text + age # print(info) # #結果tom20
list列表
# li = [12,34,56,78,"tom"] # #li.append(5) #追加 # #li.append("jerry") # li.append([123,456]) #裏面再追加列表 # print(li) #li = ["tom",123,"jerry",123] # li.clear() #清除整個列表 #v = li.copy()#結果['tom', 123] copy拷貝命令 #v = li.count(123) #計算123出現的次數 2次 #li.extend(["natasha",123]) #擴展 #li = [0,456,789,123] #v = li.index(123) #獲取123的位置,從左到右開始尋找 #li.insert(0,123) #在第一個插入123 0表明第一個 #li.remove(123) #刪除123 #li.reverse()#翻轉 #li.sort() [列表只能有數字才能排序] #print(li)
#列表中能夠嵌套任何類型:[123,"tom",[0,[tom]]]
#列表中的元素能夠是數字,字符串,列表,布爾值。。。。全部的元素
#li = [123,"tom",True,456] #print(li[3]) #索引取值第四個值 #print(li[0:2]) #切片取值 # for item in li: #也能夠循環 # print(item) # li = [123,"tom",True,456] # #li[0] = 789 #修改,把123修改爲789 0表明第一個 # #del li[0:2] #刪除前兩個元素,也能夠刪除第一個 # print(li
字符串轉換成列表
# test = "name" # li = list(test) #結果['n', 'a', 'm', 'e']把字符串指定成列表 # print(li)
列表換成字符串:既有數字又有字符串須要些for循環
# li = [123,"dsdas"] # r = str(li) # #print(li) # s = "" # for i in li: # s = s+str(i) # print(s) #只有字符串的話用join # li = ["ddd","ddd","ddd"] # v= "".join(li) # print(v)
元祖,元素不可修改,不能增長或者刪除
# tu = (11,22,33,44)# tu.count(22),獲取指定元素在元組中出現的次數 # v = tu.index(22) # print(v)
索引
# v = tu[0] # print(v)
切片
# v = tu[0:2] # print(v)
能夠被for循環,可迭代對象
# for item in tu: # print(item)
轉換
# s = "asdfasdf0" # li = ["asdf","asdfasdf"] # tu = ("asdf","asdf") # # v = tuple(s) # print(v) # v = tuple(li) # print(v) # v = list(tu) # print(v) # v = "_".join(tu) # print(v) # li = ["asdf","asdfasdf"] # li.extend((11,22,33,)) # print(li)
元組的一級元素不可修改/刪除/增長
# tu = (111,"alex",(11,22),[(33,44)],True,33,44,) # # 元組,有序。 # # v = tu[3][0][0] # # print(v) # # v=tu[3] # # print(v) # tu[3][0] = 567 # print(tu)
字典
根據序列,建立字典,並指定統一的值
# v = dict.fromkeys(["k1",123,"999"],123) # print(v)
刪除並獲取值
dic = {'k1': 123, 123: 123, '999': 123}
v = dic.pop("k1")
print(v) #獲取你刪除的值
print(dic)# 刪除後的字典
設置值,
已存在,不設置,獲取當前key對應的值
不存在,設置,獲取當前key對應的值
dic = {'k1': 123, 123: 123, '999': 123}
v = dic.setdefault("k1","123")
print(v,dic)
更新
# dic = {'k1': 123, 123: 123, '999': 123}
# dic.update({"k3":"v3"})
# print(dic)
字典的value能夠是任何值
# info = { # "k1": 18, # "k2": True, # "k3": [ # 11, # [], # (), # 22, # 33, # { # 'kk1': 'vv1', # 'kk2': 'vv2', # 'kk3': (11,22), # } # ], # "k4": (11,22,33,44) # } # print(info)
布爾值(1,0)、列表、字典不能做爲字典的key
# info ={ # 1: 'asdf', # "k1": 'asdf', # True: "123", # # [11,22]: 123 # (11,22): 123, # # {'k1':'v1'}: 123 # # } # print(info)
字典無序
# info = { # "k1": 18, # "k2": True, # "k3": [ # 11, # [], # (), # 22, # 33, # { # 'kk1': 'vv1', # 'kk2': 'vv2', # 'kk3': (11,22), # } # ], # "k4": (11,22,33,44) # } # print(info)
索引方式找到指定元素
#info = { # "k1": 18, # 2: True, # "k3": [ # 11, # [], # (), # 22, # 33, # { # 'kk1': 'vv1', # 'kk2': 'vv2', # 'kk3': (11,22), # } # ], # "k4": (11,22,33,44) # } # # v = info['k1'] # # print(v) # # v = info[2] # # print(v) # v = info['k3'][5]['kk3'][0] # print(v)
字典支持 del 刪除
# info = { # "k1": 18, # 2: True, # "k3": [ # 11, # [], # (), # 22, # 33, # { # 'kk1': 'vv1', # 'kk2': 'vv2', # 'kk3': (11,22), # } # ], # "k4": (11,22,33,44) # } # del info['k1'] # # del info['k3'][5]['kk1'] # print(info
for循環
# dict # info = { # "k1": 18, # 2: True, # "k3": [ # 11, # [], # (), # 22, # 33, # { # 'kk1': 'vv1', # 'kk2': 'vv2', # 'kk3': (11,22), # } # ], # "k4": (11,22,33,44) # } # for item in info: # print(item) # # for item in info.keys(): # print(item) # for item in info.values(): # print(item) # for item in info.keys(): # print(item,info[item]) # for k,v in info.items(): # print(k,v) # True 1 False 0 # info ={ # "k1": 'asdf', # True: "123", # # [11,22]: 123 # (11,22): 123, # # {'k1':' v1'}: 123 # # } # print(info)
整理
# 1、數字 # int(..) # 2、字符串 # replace/find/join/strip/startswith/split/upper/lower/format # tempalte = "i am {name}, age : {age}" # # v = tempalte.format(name='alex',age=19) # v = tempalte.format(**{"name": 'alex','age': 19}) # print(v) # 3、列表 # append、extend、insert # 索引、切片、循環 # 4、元組 # 忽略 # 索引、切片、循環 以及元素不能被修改 # 5、字典 # get/update/keys/values/items # for,索引 # dic = { # "k1": 'v1' # } # v = "k1" in dic # print(v) # v = "v1" in dic.values() # print(v) # 6、布爾值 # 0 1 # bool(...) # None "" () [] {} 0 ==> Fals