python-python的组成:函数、对象、模块

python的组成:函数、对象、模块

1.函数

  • 函数是组织好的模块,用来实现单一的或者相关联功能的代码块
  • 提高代码的重复利用率

1.1 函数的基本格式

def 函数名() :
		函数体

1.2 函数调用的过程

  • 函数调用,去上边查找函数的定义,执行其函数体,并返回结果

1.3 形参,实参,关键字参数,默认参数

  • 形参------------------定义函数时的参数
  • 实参------------------使用函数时的参数
  • 关键字参数--------在多个参数下,防止参数顺序混乱影响程序结果`(调用函数时用)
  • 默认参数-----------在定义函数时,为形参附初值,(调用时,实参传空,使用默认值)
  • 收集参数-----------也叫(可变参数),参数个数作者自定义,*做标识
    原理:把输入的参数作为一个元组。详解,见下
  • 收集参数与其他参数混合使用------(调用函数时,其他参数必须以关键字参数形式参入)

1.4 自定义函数及函数调用

# 无参
	def MyFirstFunction():
		print('2020.1.19.17.28')
# 一个参数
	def SecondFunction(name):
		print(name+'是谁?')
# 两个参数(参数之间用逗号隔开)
	def ThreeFunction(name,thing) :
		print(name+'非常喜欢'+thing)

# 函数调用
		MyFirstFunction()
		# 输出:2020.1.19.17.28
		
		SecondFunction('妮可罗宾')
		# 输出:妮可罗宾是谁?
		
		ThreeFunction('托尼托尼·乔巴','吃棉花糖')
		# 输出:托尼托尼·乔巴非常喜欢吃棉花糖
# 关键字参数(参数顺序混乱也不影响程序结果)
		ThreeFunction(thing='吃棉花糖',name='托尼托尼·乔巴')
		# 输出:托尼托尼·乔巴非常喜欢吃棉花糖
# 默认参数
	# 定义函数
		def ThreeFunction(name='A',thing='B') :
			print(name+'非常喜欢'+thing)
	# 调用函数时只传递一个参数,另一个传空
		ThreeFunction('托尼托尼·乔巴')
		#输出:托尼托尼·乔巴非常喜欢B
		
# 收集参数(可变参数)
	# 输出参数个数并循环输出参数名
		def change(*person):
			print(len(person))
			for echo in person:
				print(echo)	
	# 调运函数(随机输入参数)
		change('name','sex','age','address')
		# 相当于把('name','sex','age','address')作为一个元组赋值给person
		# 输出  4
				#name
				#sex
				#age
				#address
 # 收集参数与其他参数混合使用
	 # 定义函数
		 def change(*person,contry):
			print(len(person))
			print(country)
			for echo in person:
				print(echo)
	# 调用函数(以关键参数的形式传入其他参数)
		change('路飞','山治','索隆','娜美',country='日本')
		# 输出: 4
		# 		日本
		# 		路飞
		# 		山治
		#		索隆
		# 		娜美

1.5 函数的返回值reture

# 定义函数
	def name(name):
		return name
# return返回值
	name('蒙奇D· 路飞')
	# 输出:'蒙奇D· 路飞'
# 返回多个值(列表或元组)
	def name():
		return 'name','sex','age','id'
	#输出全部参数
		name()
		# 输出:('name', 'sex', 'age', 'id')
	# 输出单个参数
		name()[0]
		# 输出:'name'

1.6 函数文档

  • 作用:对函数做出解释,便于维护
  • 定义文档:在函数体里利用' 单引号 '包裹文档
  • 查看文档:函数名.__doc__查看文档注意:没有()
# 定义文档
	def sumOfNumber(a,b):
		'①形参(a,b) ②功能:求a+b的和'
		print(a+b)
# 查看文档
	sumOfNumber.__doc__
	# 输出:'①形参(a,b) ②功能:求a+b的和'

1.7 局部变量与全局变量

  • 同Java
  • 在函数里修改全局变量,python会新建一个与全局变量相同的变量进行操作,但是两个变量仅仅名字相同,在函数里修改全局变量,python会以屏蔽(Shadowing)的方式保护全局变量
  • global 标识在函数体里是把xxx定义为全局变量
# 利用global标识 在函数里更改全局变量   张三变李四
	# 全局变量
		name = '张三'
	# 定义函数,在函数里更改全局变量
		def changeName():
			global name
			name = '李四'
	# 未调用函数
		print(name)
		# 输出:张三
	# 调用函数
		changeName()
		print(name)
		# 输出:李四
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值