-
raw字符串(\不表示文中'的作用)
查看全部 -
換行,制表符,強(qiáng)調(diào)即本身,轉(zhuǎn)義(轉(zhuǎn)義字符,字符串中的歧義)
查看全部 -
? ? ? ? ? ?
布爾類型??????
? ? ? ?
查看全部 -
取模運(yùn)算%,地板除//,小數(shù)點(diǎn)位數(shù)round
查看全部 -
整數(shù),浮點(diǎn)數(shù),字符串,布爾數(shù)(and,or,not),空值none
查看全部 -
可變參數(shù)即任意個(gè)參數(shù)的意思,可變參數(shù)通常使用*args來表示。
任意個(gè)數(shù)的平均值:
def average(*args):
? ?sum = 0?? ?for item in args:
? ? ? ?sum += item
? ?avg = sum / len(args)
? ?return avg對(duì)于可變關(guān)鍵字參數(shù),一般使用**kwargs來表示。
def info(**kwargs):
? ?print('name: {}, gender: {}, age: {}'.format(kwargs.get('name'), kwargs.get('gender'), kwargs.get('age')))
info(name = 'Alice', gender = 'girl', age = 16)查看全部 -
isinstance()函數(shù),判斷參數(shù)類型
isinstance(100.0, int) # ==> False
查看全部 -
Python遞歸函數(shù)
如果在一個(gè)函數(shù)內(nèi)部調(diào)用其自身,這個(gè)函數(shù)就是遞歸函數(shù)。
def fact(n):
? ?if n==1:
? ? ? ?return 1
? ?return n * fact(n - 1)
遞歸函數(shù)的優(yōu)點(diǎn)是定義簡(jiǎn)單,邏輯清晰。理論上,所有的遞歸函數(shù)都可以寫成循環(huán)的方式,但循環(huán)的邏輯不如遞歸清晰。使用遞歸函數(shù)需要注意防止棧溢出。在計(jì)算機(jī)中,函數(shù)調(diào)用是通過棧(stack)這種數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的,每當(dāng)進(jìn)入一個(gè)函數(shù)調(diào)用,棧就會(huì)加一層棧幀,每當(dāng)函數(shù)返回,棧就會(huì)減一層棧幀。由于棧的大小不是無限的,所以,遞歸調(diào)用的次數(shù)過多,會(huì)導(dǎo)致棧溢出??梢栽囋囉?jì)算 fact(10000)。
求出1~100的和:
def my_sumB(n):
? ?sum = 0
? ?if n == 1:
? ? ? ?sum = n
? ?else:
? ? ? ?sum = n + my_sumB(n - 1)
? ?return sum查看全部 -
def make_juice(fruit):
? print('將' + fruit + '去皮')
? print('將' + fruit + '切塊')
定義函數(shù)? ?函數(shù)體
make_juice(“桃子”)? ?調(diào)用函數(shù),參數(shù)(形參:fruit,實(shí)參:桃子),
return?語(yǔ)句是函數(shù)執(zhí)行結(jié)束的標(biāo)記,一般都要把?return?語(yǔ)句放在最后
參數(shù)分為:位置參數(shù),關(guān)鍵字參數(shù)
按照?參數(shù)名 = 值?的格式傳入了參數(shù),這種參數(shù)就叫作?關(guān)鍵字參數(shù)
record(age=5, weight=21, name='佐藤正男', height=109)
Python 在解析參數(shù)時(shí),是優(yōu)先考慮?位置參數(shù)
record('佐藤正男', age=5, height=109, weight=21)
?默認(rèn)參數(shù) :默認(rèn)參數(shù)的要求是一定要放在非默認(rèn)參數(shù)的后面,否則程序會(huì)出現(xiàn)錯(cuò)誤,
def record(name, height, weight, age=5):
record('阿呆', 115, 25)
record('櫻田妮妮', 105, 18, 4)
全局變量?在當(dāng)前寫的代碼中一直起作用。全局變量?有效的范圍,叫作?全局作用域。
需要在函數(shù)內(nèi)部局部變量前加上?global?關(guān)鍵字,把局部變量強(qiáng)制變
查看全部 -
Python 操作set的其他方法
remove()方法刪除元素,元素不存在,報(bào)錯(cuò)。
discard()方法刪除元素,元素不存在,不報(bào)錯(cuò)。
清除所有元素的方法clear()
集合的子集和超集
s1 = set([1, 2, 3, 4, 5])
s2 = set([1, 2, 3, 4, 5, 6, 7, 8, 9])
# 判斷s1是否為s2的子集
s1.issubset(s2) # ==> True
# 判斷s2是否為s1的超集
s2.issuperset(s1) # ==> True判斷集合是否重合
s1 = set([1, 2, 3, 4, 5])
s2 = set([1, 2, 3, 4, 5, 6, 7, 8, 9])
s1.isdisjoint(s2) # ==> False,因?yàn)橛兄貜?fù)元素1、2、3、4、5已知兩個(gè)集合s1、s2,請(qǐng)判斷兩個(gè)集合是否有重合,如果有,請(qǐng)把重合的元素打印出來。
s1 = set([1, 2, 3, 4, 6, 8, 10])
s2 = set([1, 2, 3, 4, 5, 6, 7, 8, 9])
flag = s1.isdisjoint(s2)
if not flag:
? ?for item in s1:
? ? ? ?if item not in s2:
? ? ? ? ? ?continue
? ? ? ?print(item)查看全部 -
Python刪除set元素
set提供了remove()方法允許我們刪除set中的元素。如果remove的元素不在set里面的話,那么將會(huì)引發(fā)錯(cuò)誤。
查看全部 -
Python添加set元素
單獨(dú)添加
names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
name_set = set(names)
name_set.add('Gina')
print(name_set) # ==> set(['Gina', 'Alice', 'Candy', 'David', 'Ellena', 'Bob'])批量添加
names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
new_names = ['Hally', 'Isen', 'Jenny', 'Karl']
name_set = set(names)
name_set.update(new_names) # ==> set(['Jenny', 'Ellena', 'Alice', 'Candy', 'David', 'Hally', 'Bob', 'Isen', 'Karl'])
print(name_set)查看全部 -
讀取set元素
names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
name_set = set(names)'Alice' in name_set # ==> True
set元素是區(qū)分大小寫的查看全部 -
什么是set集合
set和list類似,擁有一系列元素,但是set和list不一樣,set里面的元素是不允許重復(fù)的,而list里面可以包含相同的元素;set與list的另一個(gè)區(qū)別是,set里面的元素是沒有順序的。
s = set([1, 4, 3, 2, 5, 4, 2, 3, 1])
print(s) # ==> set([1, 2, 3, 4, 5])查看全部 -
獲取dict的所有key
dict提供keys()函數(shù),可以返回dict中所有的key。for key in d.keys():
獲取dict所有的value
dict提供values()函數(shù),可以返回dict中所有的value。for key in d.values():
清除所有元素
dict提供clear()函數(shù),可以直接清除dict中所有的元素。
d.clear()??
print(d) # ==> {}
任務(wù):輸出字典元素?cái)?shù)
d = {'Alice': [50, 61, 66], 'Candy': [88, 75, 90]}
keys = d.keys()
print(len(keys))? #len()計(jì)數(shù)函數(shù)查看全部 -
任務(wù):請(qǐng)把每個(gè)同學(xué)的每次成績(jī)依次輸出。方法2
# Enter a code
d = {'Alice': [50, 61, 66], 'Bob': [80, 61, 66], 'Candy': [88, 75, 90]}
?for key in d:
...? ? ?value=d[key]
...? ? ?for score in value:
...? ? ? ? print(key,score)
查看全部
舉報(bào)