-
換行,制表符,強調即本身,轉義(轉義字符,字符串中的歧義)
查看全部 -
? ? ? ? ? ?
布爾類型??????
? ? ? ?
查看全部 -
取模運算%,地板除//,小數點位數round
查看全部 -
整數,浮點數,字符串,布爾數(and,or,not),空值none
查看全部 -
可變參數即任意個參數的意思,可變參數通常使用*args來表示。
任意個數的平均值:
def average(*args):
? ?sum = 0?? ?for item in args:
? ? ? ?sum += item
? ?avg = sum / len(args)
? ?return avg對于可變關鍵字參數,一般使用**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()函數,判斷參數類型
isinstance(100.0, int) # ==> False
查看全部 -
Python遞歸函數
如果在一個函數內部調用其自身,這個函數就是遞歸函數。
def fact(n):
? ?if n==1:
? ? ? ?return 1
? ?return n * fact(n - 1)
遞歸函數的優點是定義簡單,邏輯清晰。理論上,所有的遞歸函數都可以寫成循環的方式,但循環的邏輯不如遞歸清晰。使用遞歸函數需要注意防止棧溢出。在計算機中,函數調用是通過棧(stack)這種數據結構實現的,每當進入一個函數調用,棧就會加一層棧幀,每當函數返回,棧就會減一層棧幀。由于棧的大小不是無限的,所以,遞歸調用的次數過多,會導致棧溢出。可以試試計算 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 + '切塊')
定義函數? ?函數體
make_juice(“桃子”)? ?調用函數,參數(形參:fruit,實參:桃子),
return?語句是函數執行結束的標記,一般都要把?return?語句放在最后
參數分為:位置參數,關鍵字參數
按照?參數名 = 值?的格式傳入了參數,這種參數就叫作?關鍵字參數
record(age=5, weight=21, name='佐藤正男', height=109)
Python 在解析參數時,是優先考慮?位置參數
record('佐藤正男', age=5, height=109, weight=21)
?默認參數 :默認參數的要求是一定要放在非默認參數的后面,否則程序會出現錯誤,
def record(name, height, weight, age=5):
record('阿呆', 115, 25)
record('櫻田妮妮', 105, 18, 4)
全局變量?在當前寫的代碼中一直起作用。全局變量?有效的范圍,叫作?全局作用域。
需要在函數內部局部變量前加上?global?關鍵字,把局部變量強制變
查看全部 -
Python 操作set的其他方法
remove()方法刪除元素,元素不存在,報錯。
discard()方法刪除元素,元素不存在,不報錯。
清除所有元素的方法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,因為有重復元素1、2、3、4、5已知兩個集合s1、s2,請判斷兩個集合是否有重合,如果有,請把重合的元素打印出來。
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里面的話,那么將會引發錯誤。
查看全部 -
Python添加set元素
單獨添加
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元素是區分大小寫的查看全部 -
什么是set集合
set和list類似,擁有一系列元素,但是set和list不一樣,set里面的元素是不允許重復的,而list里面可以包含相同的元素;set與list的另一個區別是,set里面的元素是沒有順序的。
s = set([1, 4, 3, 2, 5, 4, 2, 3, 1])
print(s) # ==> set([1, 2, 3, 4, 5])查看全部 -
獲取dict的所有key
dict提供keys()函數,可以返回dict中所有的key。for key in d.keys():
獲取dict所有的value
dict提供values()函數,可以返回dict中所有的value。for key in d.values():
清除所有元素
dict提供clear()函數,可以直接清除dict中所有的元素。
d.clear()??
print(d) # ==> {}
任務:輸出字典元素數
d = {'Alice': [50, 61, 66], 'Candy': [88, 75, 90]}
keys = d.keys()
print(len(keys))? #len()計數函數查看全部 -
任務:請把每個同學的每次成績依次輸出。方法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)
查看全部
舉報