python3 刷題常用

進制轉換:
int("字符串",進制) 返回10進制數
bin(數字) 返回0b開頭的2進制字符串
hex(數字) 返回0x開頭的16進制字符串
oct(數字) 返回0o開頭的8進制字符串
str(10進制數字) 返回10進制字符串

字符列表合併成str:
"".join(char_list)  

長度:
len(list)
len(str)

list操作:
l1 = [] 創建list
排序,getkey函數用來獲取key,默認是第一個元素(此時不要指明key)
False是從小到大,True是從大到小
list.sort(key=getkey,reverse=False/True) 
list.insert(index,val) 向index處插入val,原本的index後移
list.extend(list1) 將list1追加list之後
list.append(val) 在list末尾添加val
list.pop(index=-1) 刪除指定index,默認是最後一個
list.reverse() 反向列表中元素

詞典操作:
d1 = {key:val} 創建dict
dict.items() 以列表返回可遍歷的(鍵, 值) 元組數組
dict.keys() 以列表返回一個字典所有的鍵
dict.values() 以列表返回字典中的所有值
dict.update(dict2) 添加,把字典dict2的鍵/值對更新到dict裏
pop(key[,default]) 刪除,刪除字典給定鍵 key 所對應的值
dict[key] =new_val 修改,修改key對應的value

集合:不包含重複元素
s1 = set() 創建一個空集合必須用set()
s1 = {1,2,3} 創建集合
s.add(x) 添加元素
s.update(list) 添加元素
s.remove( x ) 移除元素,不存在發生錯誤
s.discard( x ) 移除元素,不存在不報錯
s.clear() 清空集合
x in s x在集合中
set.intersection(set1, set2 ... etc) 返回交集
set.union(set1, set2...) 返回並集
set1.issubset(set2) s1是否爲s2的子集
set1.difference(set2) 返回差集, 包含在s1,但是不在s2中

利用集合去除重複
new_list = list ( set(list) )

內置函數:
abs(val) 絕對值
max(list) list的最大值
min(list) list的最小值
sum(list) 求和
ord(char) 返回值char的num
chr(num) 返回num對應的char
any() 函數用於判斷給定的可迭代參數 iterable 是否全部爲 False,則返回 False,如
果有一個爲 True,則返回 True。

all() 函數用於判斷給定的可迭代參數 iterable 中的所有元素是否都爲 TRUE,
如果是返回 True,否則返回 False。

map(func,迭代對象) 對迭代對象執行批量func,例如: list(map(int,["123","234"]))

深複製:
python3在函數參數中傳遞的對象是引用

# 利用copy對象進行深賦值
import copy
new_obj = copy.copy(obj)

全排列:
例子:
import itertools
result = list(itertools.permutations([1,2,3])) 
# 返回[1,2,3]所有全排列,並放入list中

牛客網格式:
#定義全局變量,函數
while True:
    try:
        #讀取case並處理
        #打印
    except:
        # 所有case結束後的處理
        break
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章