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

 

 

 

  

posted @ 2021-08-01 17:40  蓝蓝的白云天!  阅读(79)  评论(0编辑  收藏  举报