当前位置: 首页 > article >正文

Python世界:高频小技巧总结

Python世界:高频小技巧总结

    • iPython清屏指令?
    • 类型转换技巧总结?
    • 万能的排序函数汇总?
    • 如何1条指令快速生成二维数组?
    • 如何高效遍历数组及索引?
    • 高频高效的小函数有哪些?
    • 列表生成有哪些简洁写法?
    • 如何通过Python脚本打开运行exe,并传参?

iPython清屏指令?

  • !CLS, Clear Screen

类型转换技巧总结?

  • multi_res_str = "".join(multi_res_list) # 列表转字符串
  • int(str),字符串到整数
  • float(str),字符串浮点
  • str(num),数到字符串
  • // 实现整除
  • % 实现取余

万能的排序函数汇总?

列表排序

sorted(list1,reverse=True)

字典排序

dic2asc=sorted(dic1,key=dic1.__getitem__)

dic4asc=sorted(dic1.items(),key=lambda dic1:dic1[1])

d = {'mike': 10, 'lucy': 2, 'ben': 30}

# 根据字典值的升序排序

d_sorted_by_value = sorted(d.items(), key=lambda x: x[1]) # 若元素为数值,在x[1]前添加负号也可,降序排序

print(d_sorted_by_value)

# 根据字典值的降序排序

d_sorted_by_value = sorted(d.items(), key=lambda x: x[1], reverse=True) # 默认按升序排,reverse入参默认是False,如果要降序,则reverse=True

print(d_sorted_by_value)

# 根据字典键的升序排序

d_sorted_by_value = sorted(d.items(), key=lambda x: x[0])

print(d_sorted_by_value)

# 根据字典键的降序排序

d_sorted_by_value = sorted(d.items(), key=lambda x: x[0], reverse=True)

print(d_sorted_by_value)

如何1条指令快速生成二维数组?

  • res = [[0]*res_len for i in range(res_len)] # list迭代生成二维数组

如何高效遍历数组及索引?

在for循环中,如果需要同时访问索引和元素,你可以使用enumerate()函数来简化代码。

l = [1, 2, 3, 4, 5, 6, 7]
# 获取列表元素值及对应索引
for index, item in enumerate(l):
  if index < 5:
    print(item) 

高频高效的小函数有哪些?

  • map/range,函数是用c写的,效率最高
  • filter,根据条件过滤取值
  • map,根据表达式对原数据做映射变换
  • reduce,累乘元素
  • sum,累加元素

列表生成有哪些简洁写法?

expression1 if condition else expression2 for item in iterable
expression for item in iterable if condition

text = ' Today, is, Sunday'
text_list = [s.strip() for s in text.split(',') if len(s.strip()) > 3]
print(text_list)
# ['Today', 'Sunday']

# 法1
l = []
for xx in x:
  for yy in y:
     if xx != yy:
     	l.append((xx, yy))

# 法2
l2 = [(xx, yy) for xx in x for yy in y if xx != yy]

如何通过Python脚本打开运行exe,并传参?

# r_v = os.system(para)
# print(r_v) # 仅能返回main值

r = os.popen(para) # 可以获取stdout打印的结果
text = r.read()
r.close()
print(text)

http://www.kler.cn/a/464808.html

相关文章:

  • 急需升级,D-Link 路由器漏洞被僵尸网络广泛用于 DDoS 攻击
  • 【ArcGIS微课1000例】0136:制作千层饼(DEM、影像、等高线、山体阴影图层)
  • 无刷直流电机(BLDC)六步换向法
  • 解决npm报错:sill idealTree buildDeps
  • Oracle Dataguard(主库为 Oracle 11g 单节点)配置详解(3):配置备用数据库
  • python3GUI--智慧交通监控与管理系统 By:PyQt5
  • 低代码开发:开启企业数智化转型“快捷键”
  • Python 图像处理:生成美丽的书籍封面
  • torch.nn.functional的用法
  • 小程序学习05——uniapp路由和菜单配置
  • 判断旗帜是否符合ISO新标准
  • 基于springcloud分布式的网上商城系统设计与实现【源码+文档+部署讲解】
  • Spark-Streaming有状态计算
  • 十个Scala的小知识
  • 通过blob请求后端导出文件
  • idea项目导入gitee 码云
  • aws(学习笔记第二十一课) 开发lambda应用程序
  • 【3D开发SDK】HOOPS助力NAPA:打造高效三维船舶设计平台
  • 【赵渝强老师】MongoDB的Journal日志
  • Elasticsearch: 高级搜索
  • 华为OD E卷(100分)42-矩形相交面积
  • webserver的http实现
  • MATLAB中whitespacePattern函数用法
  • maya 删除 Ctrl + Delete vs Delete
  • Python实现Excel行列转换
  • 算法 class 005 (对数器C语言实现)