python主函数作用 python在主函数中调用函数

python main函数有什么用print 'main'当脚本作为执行脚本时__name__的值为__main__当脚本作为模块时__name__为模块文件名 。
main函数在程序中大多数是必须存在的 。C语言标准中强制要求main函数的返回值类型为int,main函数的返回值是传递给操作系统,让操作系统判断程序的执行情况 。
一个程序,无论复杂或简单,总体上都是一个“函数”;这个函数就称为“main 函数” , 也就是“主函数” 。比如有个“做菜”程序,那么“ 做菜 ”这个过程就是“主函数” 。在主函数中 , 根据情况,你可能还需要调用“买菜,切菜,炒菜”等子函数 。
main函数在程序中大多数是必须存在的,但是依然有例外情况,比如windows编程中可以编写一个动态链接库模块,这是其他windows程序可以使用的代码 。由于DLL模块不是独立的程序,因此不需要main函数 。
从函数的形势看,函数分两类:
无参函数 。printstar和print_message就是无参函数 。在调用无参函数时,主调函数并不将数据传送给被调用函数,一般用来执行指定的一组操作 。
有参函数 。在调用函数时,在主调函数和被调用函数之间有数据传递 。也就是说,主调函数可以将数据传递给被调用函数使用,被调用函数中的数据也可以带回来供主调函数使用 。
python中函数的作用Python 函数定义以及参数传递
1.函数定义
#形如def func(args...):
doSomething123
以关键字def 开头python主函数作用,后面是函数名和参数下面是函数处理过程 。
举例:
def add( a, b ):
return a+b12
参数可以设定默认值python主函数作用 , 如:
def add( a, b=10 ): #注意:默认值参数只会运算一次
return a+b12
默认值参数只会运算一次是什么意思?
def func( a, b=[] ): #bpython主函数作用的默认值指向一个空的列表,每次不带默认值都会指向这块内存
b.append(a)return b
print(func(1))#向默认的空列表里加入元素1  , 默认列表里已经是[1]print(func(2))#向默认的列表里加入元素2,默认列表里已经是[1,2]print(func(3,[]))#向b指向的空列表里加入元素1 ,默认列表里还是[1,2]print(func(4))#向默认的列表里加入元素4,默认列表里已经是[1,2,4]'''
结果:
[1]
[1, 2]
[3]
[1, 2, 4]
'''12345678910111213141516
这下明白为什么默认参数只计算一次python主函数作用了吧,函数参数不传递时默认值总是指向固定的内存空间,就是第一次计算的空间 。
2.参数传递
def func(a, b):
print('a=%d, b=%d' % (a,b) )12
在使用函数时可以如下方式,结果都是相同的
func(10,20) #不使用参数名,需要按参数顺序传递func(a=10,b=20) #使用参数名可以不按顺序传递func(b=20,a=10)#结果:a=10, b=20a=10, b=20a=10, b=201234567
如果函数定义形式如下方式:
def func(*args): #这种定义会把传递的参数包成元组
print(args,type(args))
【python主函数作用 python在主函数中调用函数】func(10,20)#结果:#(10, 20) class 'tuple'1234567
举一个和上述过程相反的例子:
def func(a,b):
print('a=%d, b=%d' % (a,b) )
a = (10, 20)
func(*a) #在调用函数使用`*`则会把元组解包成单个变量按顺序传入函数#结果:a=10, b=20123456
总结:*号在定义函数参数时,传入函数的参数会转换成元组,如果 *号在调用时则会把元组解包成单个元素 。
另一种定义:
def func(**kw):#使用**定义参数会把传入参数包装成字典dict
print(kw, type(kw) )
func(a=10,b=20)#这种函数在使用时必须指定参数值,使用key=value这种形式#结果:{'b': 20, 'a': 10} class 'dict'12345

推荐阅读