很多时候我们都需要了解下python中导入包的属性方法信息,当然dir 是最便捷的了,不过如果想知道特定的,例如以_ 开头的属性,需要写个筛选,以下是实现筛选的两种方式,主要是练习下yield from 的使用,可以聊作参考~
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#法1
def e(start = '_' , module = 'os' ):
module = __import__ (module)
def gen_attr():
for attr in dir (module):
if attr.startswith(start):
yield attr
yield from gen_attr()
#法2 利用生成器推导式更简洁
def e2(start = ' ', module=' os'):
module = __import__ (module)
yield from (attr for attr in dir (module) if attr.startswith(start))
if __name__ = = '__main__' :
print ( list (e('')))
print ( list (e2( 'a' )))
|
以上这篇便捷提取python导入包的属性方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/xiaodongxiexie/article/details/78551301