python错题重点题 巧用题
1. 判断一个数据类型是否是数字
a = 1
print(isinstance(a, int)) # True
2. 两个列表的合并extend()方法
a = [1, 2]
b = [2, 3]
a.extend(b) # [1, 2, 3, 4] 注意这个不能做赋值操作, 例如 c = a.extend(b)是错误的.
3. 两个列表合并还可采用 + 的方式, 可以赋值操作
接上例题 c = a + b # [1, 2, 3, 4]
4. 列表生成式的应用, 生成一副扑克牌
color_list = ["红桃", "方块", "黑桃", "梅花"] # 花色列表
number_list = list(range(1, 11)) + ["J", "Q", "K"] # 数字列表.
# 花色在前, 数字在后, 注意for in 套了两次, 注意for花色在前, for数字在后
card52_list = [(c, n) for c in color_list for n in number_list] # [("红桃", 1), ("红桃", 2), ("红桃", 3), ("红桃", 4), ("方块", 1), ...]
5. 获取执行windows命令后的返回值, 以windows下ipconfig命令为例.
import subprocess res = subprocess.getoutput("ipconfig") print(res) """ Windows IP 配置 无线局域网适配器 无线网络连接: 连接特定的 DNS 后缀 . . . . . . . : 本地链接 IPv6 地址. . . . . . . . : fe80::45a9:e178:c1c3:7f05%14 IPv4 地址 . . . . . . . . . . . . : 192.168.31.242 子网掩码 . . . . . . . . . . . . : 255.255.255.0 默认网关. . . . . . . . . . . . . : 192.168.31.1 以太网适配器 本地连接: 媒体状态 . . . . . . . . . . . . : 媒体已断开 连接特定的 DNS 后缀 . . . . . . . : ... """
6. 字典中setdefault()在计数中的妙用, 原文链接:https://blog.csdn.net/weixin_44894740/article/details/113810023
setdefault():
用于字典查找键值。
语法:dict.setdefault(key, default=None)
key为查找的键,default为查不到时,系统自动在字典里生成的与key对应的值。
如果存在该键值对,则返回对应的值,否则返回default的参数
利用此函数计数方法如下:
need = {} for c in t: need[c] = need.setdefault(c, 0) + 1 # 字典中有C键, 则用其值, 没有该键, 则建立该键并设置值为0, 后面再加上1, 就起到了累加的效果. 相当于 +=1