一些python实践

优雅导入模块

按如下顺序导入模块就是一种好做法:

  1. 标准库模块------比如: sysosgetoptre 等。
  2. 第三方库模块(安装于 Python site-packages 目录中的内容)------如requests、PIL.Image 等。
  3. 本地开发的模块
如何找到对象的方法或属性?

假定 x 是一个用户自定义类的实例,dir(x) 将返回一个按字母排序的名称列表,其中包含了实例的属性及由类定义的方法和属性。

逗号运算符的优先级是什么?

逗号不是 Python 的运算符。 请看以下例子:

Python 复制代码
>>> "a" in "b", "a"
(False, 'a')

由于逗号不是运算符,而只是表达式之间的分隔符,因此上述代码就相当于:

Python 复制代码
("a" in "b"), "a"

而不是:

Python 复制代码
"a" in ("b", "a")

对于各种赋值运算符( =+= 等)来说同样如此。他们并不是真正的运算符,而只是赋值语句中的语法分隔符。

如何根据另一个列表的值对某列表进行排序?

将它们合并到元组的迭代器中,对结果列表进行排序,然后选择所需的元素。

Python 复制代码
>>> list1 = ["what", "I'm", "sorting", "by"]
>>> list2 = ["something", "else", "to", "sort"]
>>> pairs = zip(list1, list2)
>>> pairs = sorted(pairs)
>>> pairs
[("I'm", 'else'), ('by', 'sort'), ('sorting', 'to'), ('what', 'something')]
>>> result = [x[1] for x in pairs]
>>> result
['else', 'sort', 'to', 'something']
相关推荐
weixin_440730506 小时前
playwright浏览器自动化实战笔记3-登陆以及退出登陆流程-多用户操作
笔记·python·自动化
卷无止境6 小时前
测试全绿,功能能跑,代码却烂到没法上线:AI编程助手留下的十个坑
后端·python
卷无止境6 小时前
终端里的AI战争,命令行编程代理全景扫描
python·agent
SamChan906 小时前
PDF多语言翻译的格式还原技术拆解:从版面分析到内容重排的工程实现
python·ai·pdf·机器翻译
..Dauntless..6 小时前
【Linux】权限问题——拥有者、所属组和其他用户的协调
linux·运维·服务器
平行云6 小时前
实时云渲染信创架构解析:从GPU池化到全栈适配的技术演进
linux·unity·docker·ue5·webgl·数字孪生·实时云渲染
handler016 小时前
【Linux】信号:内核的“敲门声”
linux·运维·服务器·c++·c·信号·signal
T1mzhou6 小时前
ARM64 Linux 6.10内核启动流程6-psci.c和ATF/U-Boot 的电源接口
linux·服务器·c语言
liuze4087 小时前
安装boss-zhipin-mcp(招聘)
开发语言·python
TickDB7 小时前
Python 接入 A 股盘前集合竞价数据:AkShare 报错到 TickDB 实测的完整解法
python·websocket·行情数据 api