py中的列表
- list:可變數(shù)組,可以增刪改查。是一種有序的集合。多維數(shù)組概念和寫法和替他預(yù)言差不多。L[1][2]
#定義一個list變量
L1 = ['1','2',3,True]
# len()獲取元素個數(shù)
print(len(L1))
# 索引取值,注意不要越界哈,最后一個元素的索引是len(L1) - 1
print(L1[2])
#倒敘索引【-3,-2,-1】
print(L1[-1])
#增刪改查
L1.append("我是增加的元素,會追加到list末尾位置")
L1.index(1,"我是插入的元素,第一個參數(shù)是索引")
L1.pop(2)#如果這個參數(shù)不寫,會自動刪除最后一個元素
L1[1]="用來替換的新元素"
- tuple(元組):有序,但是一旦初始化就不可更改,這里的更改是指他的元素指向不可更改。當(dāng)你定義一個tuple時,在定義的時候,tuple的元素就必須被確定下來。而且他也沒有append(),pop()等方法,也不能在重新賦值了。
#沒有元素、多個元素、一個元素,注意一個元素的寫法t2(1)這樣寫是不對的
t = ()
t1= ("1","2")
t2=(1,)
py中的dict(字典):
dict可以用在需要高速查找的很多地方,在Python代碼中幾乎無處不在,正確使用dict非常重要,需要牢記的第一條就是dict的key必須是不可變對象.查找和插入的速度極快,不會隨著key的增加而變慢;需要占用大量的內(nèi)存,內(nèi)存浪費(fèi)多。list恰好相反。
==示例代碼==
d = {'name':'hello_world', 'age': 27, 'sex': 'man'}
#key不存在會報錯
#判斷key值是否存在
if 'age' in d:
print(d['name'])
#還可以用get()取值,如果key不存在,可以返回None,或者自己指定的value
d.get('price')
d.get('price',30)
#刪除key,它對應(yīng)的value也會刪除掉,注意pop方法調(diào)用返回的是對應(yīng)的value值
print(d.pop('age'))
py中的set
set和dict類似,也是一組key的集合,但不存儲value。由于key不能重復(fù),所以,在set中,沒有重復(fù)的key。創(chuàng)建一個set,需要提供一個list作為輸入集合。s=set(['1','2','3'])。他也是無序的。set和dict的唯一區(qū)別僅在于沒有存儲對應(yīng)的value,但是,set的原理和dict一樣,所以,同樣不可以放入可變對象,因?yàn)闊o法判斷兩個可變對象是否相等,也就無法保證set內(nèi)部“不會有重復(fù)元素”。試試把list放入set,看看是否會報錯。
==示例代碼==
s=set([1,2,3])
s1=set([2,3,4])
s2=set([1,1,2,2,3,4])
#重復(fù)元素在set中自動被過濾
print(s2)
#添加元素,因?yàn)樵夭恢貜?fù)機(jī)制,多次添加同一個值,只有一個會被添加進(jìn)去,只要記住他元素不重復(fù)這個規(guī)則就好
s.add(5)
#刪除元素,如果set離沒有元素你還要刪除這個元素,那么活該你報錯。s.remove(10),這就是錯誤的示范
s.remove(3)
#set之間的交集和并集操作
print(s & s1)
print(s | s1)
print out:
{1, 2, 3, 4}
{2}
{1, 2, 3, 4, 5}
py中的條件判斷
python中的代碼縮進(jìn)規(guī)則:四個空格(代碼塊的含義)
- 標(biāo)準(zhǔn)格式:條件為True,執(zhí)行代碼塊里的方法,從上往下以此判斷,有一為True,下面的不執(zhí)行了
if <條件判斷1>:
<執(zhí)行1>
elif <條件判斷2>:
<執(zhí)行2>
elif <條件判斷3>:
<執(zhí)行3>
else:
<執(zhí)行4> - 簡寫方式:只要a是非零數(shù)值、非空字符串、非空list等,就判斷為True,否則為False
if a :
循環(huán)(for/while)
Python的循環(huán)有兩種,一種是for...in循環(huán),另一種是while語句
- for in :每個元素代入變量,然后執(zhí)行縮進(jìn)塊的語句.
l1=[1,2,2,3,4,5,6]
for a in l1:
print(a)
#Python提供一個range()函數(shù),可以生成一個整數(shù)序列,再通過list()函數(shù)可以轉(zhuǎn)換為list
for b in list(range(100)):
print(b)
- while:只要條件滿足,就不斷循環(huán),條件不滿足時退出循環(huán),配合break、continue語句。break語句可以在循環(huán)過程中直接退出循環(huán),而continue語句可以提前結(jié)束本輪循環(huán),并直接開始下一輪循環(huán)。這兩個語句通常都必須配合if語句使用。
sum = 0
n = 99
while n > 0:
sum = sum + n
n = n - 2
print(sum)