python笔记

发布时间:2024年01月03日
from collections import OrderdDict

order_dict =?OrderdDict(items=None)

any和all

Python any() 和 all() 函数

any() #只要有一个True,则返回True,全False才返回False

all() #只要有一个False,则返回False,全True才返回True

列表的enumerate()

python 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

python中defaultdict用法详解

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():判断字符串中所有字符是否都是可打印字符或字符串是否为空
?

?

文章来源:https://blog.csdn.net/m0_51971452/article/details/135366587
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。