485 字
2 分钟
Python常用Skill
Python常用技能汇总
- 这里是一些写python脚本时常用的小技巧,长期更新
咕咕咕

获取脚本目录
- 脚本运行时相对路径时基于命令行的路径.这样直接在脚本里使用相对路径会出现问题.我们可以使用如下方法获得脚本所在的绝对路径,以及脚本本身的文件名.
import osWORK_PATH,FILE_NAME=os.path.split(os.path.abspath(__file__))
- WORK_PATH中就存储了脚本所在的绝对路径
- FILE_NAME中就是脚本名称
获取Windows用户目录
- 有时我们需要获取用户默认的下载目录,或者是文档目录等等
import osUSER_PATH=os.path.expanduser("~")DOWNLOAD_PATH=ps.path.join(os.path.expanduser("~"),"Download")
- USER_PATH中存储了用户目录的绝对路径
- DOWNLOAD_PATH中存储了用户默认下载目录(如果用户没有自己重命名这个文件夹的话)
Python参数传递中的*args以及**kwargs
-
事实上真正的python参数传递语法是* 和 **。*args和**kwargs是我们一种约定俗成的写法。
-
*args
-
*args用来表示函数接受可变长度的 非关键字 参数作为函数的输入
def test(normal_arg, *args):print("first normal arg:"+normal_arg)for i,x in enumerate(args):print("{} arg is {}".format(i+1,x))test("normal","a","b","c","d") -
样例输出
first normal arg:normal1 arg is a2 arg is b3 arg is c4 arg is d
-
-
**kwargs
- **kwargs表示函数接受可变长度的关键字参数字典作为参数,即可以简单的理解为传入的是字典参数
def test(**kwargs):if kwargs is not None:for key, value in kwargs.iteritems():print("{} = {}".format(key,value))# Or you can visit kwargs like a dict() object# for key in kwargs:# print("{} = {}".format(key, kwargs[key]))test(name="python", value="5")
- 样例输出
name = pythonvalue = 5
- **kwargs表示函数接受可变长度的关键字参数字典作为参数,即可以简单的理解为传入的是字典参数
-
What’s more
-
我们也可以使用这两个参数来调用一般参数格式的函数
def func(arg1,arg2,arg3):print("arg1: " + arg1)print("arg2: " + arg2)print("arg3: " + arg3)args_list=("python",2,3)func(*args_list)print("==================")kwargs_dict={"arg3": 3, "arg1": "python", "arg2": 2}func(**kwargs_dict) -
样例输出:
arg1: pythonarg2: 2arg3: 3==================arg1: pythonarg2: 2arg3: 3
-
Python常用Skill
https://konnoyuuki.cc/posts/python常用skill/分享文章
生成精美分享图或复制链接,与更多人分享本文。
继续阅读
换条路线
从其他文章中稳定抽取
最后更新于 ,距今已过 2797 天
部分内容可能已过时
评论