1. 程式人生 > >python之路——day 02

python之路——day 02

value 技術 空白 更改 就是 鍵值對 aaa 表現 pri

字符串之間的拼接

s1 = ‘qwe‘
s2 = ‘asd‘
print(s1 + s2)

qweasd

s1 = ‘qwe‘
s2 = ‘asd‘
print(s1 * 8)

Python中%s代表字符串類型的變量,%d代表整數類型的變量,格式化的表現形式之字典,例如

技術分享圖片

bytes和str之間的轉化編碼與解碼


技術分享圖片

切片就是通過索引(索引:索引:步長)截取字符串的一段,形成新的字符串(原則就是顧頭不顧腚)

a = ‘ABCDEFGHIJK‘
print(a[0:3])
print(a[2:5])
print(a[0:]) #默認到最後
print(a[0:-1]) #-1就是最後一個
print(a[0:5:2]) #加步長
print(a[5:0:-2]) #反向加步長

字符串常用方法。

s1 = ‘dasdfasasd‘

print(s1.capitalize()) #首字母大寫
print(s1.swapcase()) #大小寫翻轉
s2 =‘egon say hi‘
print(s2.title()) #每個單詞的首字母大寫

內容居中,總長度,空白處填充
a1 = ‘123‘
a2 = a1.center(20,"*") print(a2)

數字符串中的元素出現的個數。
ret3 = a1.count("a",0,4) # 可切片
print(ret3)
a2 = "hqw\t"
#\t前面的補全
# 默認將一個tab鍵變成8個空格,如果tab前面的字符長度不足8個,則補全8個,如果tab鍵前面的字符長度超過8個不足16個則補全16個,以此類推每次補全8個。
ret4 = a2.expandtabs()
print(ret4)

a4 = "dkfjdkfasf54"
#startswith 判斷是否以...開頭
#endswith 判斷是否以...結尾
ret4 = a4.endswith(‘jdk‘,3,6)  # 顧頭不顧腚
print(ret4)  # 返回的是布爾值
ret5 = a4.startswith("kfj",1,4)
print(ret5)

#尋找字符串中的元素是否存在
# ret6 = a4.find("fjdk",1,6)
# print(ret6)  # 返回的找到的元素的索引,如果找不到返回-1

# ret61 = a4.index("fjdk",4,6)
# print(ret61) # 返回的找到的元素的索引,找不到報錯。

#split 以什麽分割,最終形成一個列表此列表不含有這個分割的元素。
# ret9 = ‘title,Tilte,atre,‘.split(‘t‘)
# print(ret9)
# ret91 = ‘title,Tilte,atre,‘.rsplit(‘t‘,1)
# print(ret91)

#format的三種玩法 格式化輸出
res=‘{} {} {}‘.format(‘egon‘,18,‘male‘)
res=‘{1} {0} {1}‘.format(‘egon‘,18,‘male‘)
res=‘{name} {age} {sex}‘.format(sex=‘male‘,name=‘egon‘,age=18)

#strip
name=‘*egon**‘
print(name.strip(‘*‘)) 
print(name.lstrip(‘*‘))
print(name.rstrip(‘*‘))

#replace
name=‘alex say :i have one tesla,my name is alex‘
print(name.replace(‘alex‘,‘SB‘,1))

#####is系列
name=‘jinxin123‘
print(name.isalnum()) #字符串由字母或數字組成
print(name.isalpha()) #字符串只由字母組成
print(name.isdigit()) #字符串只由數字組成

針對邏輯運算的進一步研究:

  1,在沒有()的情況下not 優先級高於 and,and優先級高於or,即優先級關系為( )>not>and>or,同一優先級從左往右計算。

列表

列表是python中的基礎數據類型之一,其他語言中也有類似於列表的數據類型,比如js中叫數組,他是以[]括起來,每個元素以逗號隔開,而且他裏面可以存放各種數據類型比如:

li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]

列表相比於字符串,不僅可以儲存不同的數據類型,而且可以儲存大量數據,32位python的限制是 536870912 個元素,64位python的限制是 1152921504606846975 個元素。而且列表是有序的,有索引值,可切片,方便取值。

增:

a = [1,‘a‘,‘b‘,2,3,‘a‘]
# a.insert(0,55) #按照索引去增加
# print(a)
#
# a.append(‘aaa‘) #增加到最後
# a.append([1,2,3]) #增加到最後
# print(a)
#
# a.extend([‘q,a,w‘]) #叠代的去增
# a.extend([‘q,a,w‘,‘aaa‘])
# a.extend(‘a‘)
# a.extend(‘abc‘)
# a.extend(‘a,b,c‘)
# print(a)

刪:

# a = li.pop(1) #按照位置去刪除,有返回值
# print(a)

# del a[1:3] #按照位置去刪除,也可切片刪除沒有返回值。
# print(a)

# a.remove(‘a‘) #按照元素去刪除
# print(a)

# a.clear() #清空列表

改:
# a = [1,‘a‘,‘b‘,2,3,‘a‘]
# a[1] = ‘dfasdfas‘
# print(a)
# a[1:3] = [‘a‘,‘b‘]
# print(a)

查:
用切片或者for循環遍歷





字典

增:

# dic[‘a‘] = ["a","b","c"]
# print(dic)
# setdefault 在字典中添加鍵值對,如果只有鍵那對應的值是none,但是如果原字典中存在設置的鍵值對,則他不會更改或者覆蓋。
# dic.setdefault(‘k‘,‘v‘)
# print(dic) # {‘age‘: 18, ‘name‘: ‘jin‘, ‘sex‘: ‘male‘, ‘k‘: ‘v‘}
# dic.setdefault(‘k‘,‘v1‘) # {‘age‘: 18, ‘name‘: ‘jin‘, ‘sex‘: ‘male‘, ‘k‘: ‘v‘}
# print(dic)

刪:

# dic_pop = dic.pop("a",‘無key默認返回值‘) # pop根據key刪除鍵值對,並返回對應的值,如果沒有key則返回默認返回值
# print(dic_pop)
# del dic["name"]  # 沒有返回值。
# print(dic)

# dic_pop1 = dic.popitem()  # 隨機刪除字典中的某個鍵值對,將刪除的鍵值對以元祖的形式返回
# print(dic_pop1)  # (‘name‘,‘jin‘)

# dic_clear = dic.clear()  # 清空字典
# print(dic,dic_clear)  # {} None

改:
# dic = {"name":"jin","age":18,"sex":"male"}
# dic2 = {"name":"alex","weight":75}
# dic2.update(dic)  # 將dic所有的鍵值對覆蓋添加(相同的覆蓋,沒有的添加)到dic2中
# print(dic2)

查:
# value1 = dic["name"]  # 沒有會報錯
# print(value1)
#
# value2 = dic.get("djffdsafg","默認返回值")  # 沒有可以返回設定的返回值
# print(value2)




python之路——day 02