#不定长参数实例1:加了星号 * 的参数会以元组(tuple)的形式导入,存放所有未命名的变量参数。
def printinfo( arg1, *vartuple ):
print ("输出: ")
print (arg1)
print (vartuple)
print(type(vartuple))
printinfo( 70, 60, 50 )
printinfo( 10 )
其中(70,60,50)arg1=70,vartuple=(60,50)
不定长参数实例2:加了两个星号 ** 的参数会以字典的形式导入,存放所有未命名的变量参数。
def printinfo( arg1, **vardict ):
print ("输出: ")
print (arg1)
print (vardict)
printinfo(1, a=1,b=2)
**vardict 字典性变量
(1,a=1,b=2)中 arg1=1,vardict={‘a’:1,‘b’:2}
nonlocal 关键字
num = 0
def outer():
num = 10
def inner():
nonlocal num # nonlocal关键字声明
num = 100
print(num)
inner()
print(num)
outer()
print(num)
加上nonlocal 往上面扩一层,num作用域扩到outer中
# 内置函数所在模块的范围
import builtins
dir(builtins)
常用标准库
#os模块:提供了不少与操作系统相关联的函数。
import os
print(os.getcwd()) # 返回当前的工作目录
os.chdir(‘c:/users/jiang’) # 修改当前的工作目录
print(os.getcwd())
os.system(‘mkdir today’) # 执行系统命令 mkdir
os.chdir(‘c:/users/jiang/today’)
print(os.getcwd())
注意事项:windows为反斜杠‘\’,在程序中为‘/’的
import os
dir(os)
#
dir()函数返回当前的os中的函数
#shutil 模块:提供针对日常的文件和目录管理
import shutil
shutil.copyfile(‘c:/users/jiang/fileoi1.txt’, ‘file1.txt’)
shutil.move(‘file1.txt’, ‘c:/users/jiang/documents/’)
copyfile 复制文件功能
move 移动文件功能
#glob模块:提供了一个函数用于从目录通配符搜索中生成文件列表。
import glob
glob.glob(“c:/users/jiang/*.html”) #获取后缀为.py的文件列表
搜索c:/users/jiang/下所有.html的文件
sys模块
import sys
print(sys.argv) # sys.argv变量中保存着命令参数
print(sys.path) # sys模块的path变量中存储着impost搜索路径
sys.argv sys.argv变量中保存着命令参数 返回值为列表形式