python笔记
from collections import OrderdDict
order_dict =?OrderdDict(items=None)
any和all
any() #只要有一个True,则返回True,全False才返回False
all() #只要有一个False,则返回False,全True才返回True
列表的enumerate()
enumerate(list, start=0) #返回下标和值,默认从0开始
for index,value in enumerate(L, 1): #下标从1开始计数
? ? ? ? print(index, value)
文件的x模式
先判断文件是否存在,如果存在不覆盖写入,如果不存在,则w模式打开文件写入内容
with open('onefile', 'xt') as f:
? ? ? ? f.write('abc\n')
带默认值的Dict
from collections import defaultdict
dict = defaultdict(factory_function)
不是内置的函数,而是python标准库里的函数
defaultdict的作用是在于,当字典里的key不存在但被查找时,返回的不是keyError而是一个默认值,这个factory_function可以是list、set、str等等,作用是当key不存在时,返回的是工厂函数的默认值,比如list对应[ ],str对应的是空字符串
样例:可以统计字符串中出现数字的次数
d = defaultdict(list)
for word in "123abc":
? ? d[word] += 1
# 输出 defaultdict(<class 'int'>, {'1': 1, '2': 1, '3': 1, 'a': 1, 'b': 1, 'c': 1})
样例:判断key是否存在,如果不存在,则新建一个list并赋值给key,如果已经存在,则调用list的append方法,将值添加进去
d = defaultdict(list)
paris = {i:i*i for i in range(5)}
for k, v in paris.items():
d[k].append(v)
# 输出 defaultdict(<class 'list'>, {0: [0], 1: [1], 2: [4], 3: [9], 4: [16]})
有序的Dict?
迭代时保留原始插入顺序
from collections import OrderdDict
order_dict =?OrderdDict(items=None)
python的Counter用法
样例:统计次数
from collections import Counter
words_counts = Counter()
lines = "12332abcbc"
for word in lines:
words_counts.update(word)
print("words_counts = ", words_counts)
# 输出 Counter({'2': 2, '3': 2, 'b': 2, 'c': 2, '1': 1, 'a': 1})
上下文管理器可以同时管理多个资源
__enter__协议
__exit__协议
with open(‘data.txt’) as data_r, open('target.txt', 'w') as tar_w:
tar_w.write(date_r.read())
列表添加元素 append()和extend()区别
names = ["Jimmy", "Timmy"]
more_names = ["Kenny", "Lenny"]
names.extend(more_names)
print(names)
# 输出['Jimmy', 'Timmy', 'Kenny', 'Lenny']
names = ["Jimmy", "Timmy"]
more_names = ["Kenny", "Lenny"]
names.append(more_names)
print(names)
# 输出['Jimmy', 'Timmy', ['Kenny', 'Lenny']]
列表动态删除元素
def remove_list(lst,n):
? ? d = dict(zip(range(len(lst)), lst))
? ? return [v for k,v in d.items() if v != n]
进制转换
bin(10) # 十进制转二进制
hex(1033) # 十进制转十六进制
int('10100111110',2)# 二进制到十进制
判断类型?
str.isalnum():判断所有字符是否都是数字或者字母
str.isalpha():判断所有字符是否都是字母,不区分大小写
str.isdigit():判断所有字符是否都是数字
str.islower():判断字符串中所有字母是否都是小写
str.isupper():判断字符串中所有字母是否都是大写
str.istitle():判断字符串中所有单词的首字母都是大写
str.isspace():判断字符串中所有字符是否为由空白字符
str.isnumeric():判断所有字符是否都是数字(只针对 Unicode 对象)
str.isdecimal():判断所有字符是否都是十进制字符(只针对 Unicode 对象)
str.isidentifier():判断字符串是否为有效标识符
str.isprintable():判断字符串中所有字符是否都是可打印字符或字符串是否为空
?
?
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!