一 A
1.1 arg_parse
parse_args是argparse模块中的一个重要函数,用于解析命令行参数。
它的主要功能是:
-
根据添加的ArgumentParser对象中的参数定义,解析命令行参数字符串。
-
返回一个Namespace对象,包含解析后的参数名和值。
可选参数
为了在命令行中避免上述位置参数的bug(容易忘了顺序),可以使用可选参数,这个有点像关键词传参,但是需要在关键词前面加--
,例如
import argparse
parser = argparse.ArgumentParser(description='姓名')
parser.add_argument('--family', type=str,help='姓')
parser.add_argument('--name', type=str,help='名')
args = parser.parse_args()
#打印姓名
print(args.family+args.name)
在命令行中输入
python demo.py --family=张 --name=三
则输出为
张三
六 F
6.1 format
(1)格式化输出 format
用{}和:来代替%,{number},其中number代表位置
"{0} {1}".format("hello", "world") # 设置指定位置
'hello world'
(2)数字格式化
上图引用自Python format 格式化函数 | 菜鸟教程 ,侵删。
print('{1:032b}'.format(3,2))
其中1代表的是位置,也就是代表format(3,2)中的2。032b表示的是32位二进制数,而前面的0表达的是在前面补0。
十五 O
15.1 os.path.splitext 和os.path.split
os.path.splitext()是将文件名和扩展名分开
os.path.split()是将路径和文件全名分开
附录
一 魔法函数
1 __call__
在使用对象的时候自动调用
class A:
def __init__(self,a):
self.a = a
print("init")
def __call__(self,*args):
print("call")
def test(a):
# a = A(1)
return A(a)
def test2(f):
return f(a)
test2(test(1))
输出
由于test函数会返回一个对象,test2会接受一个对象,然后在test2中函数式调用这个对象,因此会自动调用call函数,参考:
Python中__call__的用法 - 叶迩 - 博客园 (cnblogs.com)https://www.cnblogs.com/yeer-xuan/p/13497494.html