python函数定义,局部变量、全局变量-爱代码爱编程
函数
使用函数的意义在于提高编程效率,避免大量的重复工作
函数分为:
内置函数:可以直接调用的函数
第三方,模块相关函数:即导入第三方包,直接调用第三方包函数
自定义函数:即根据自己的计算需求,编写属于自己的程序段
常用内置函数
(1)len() :计算字符串的长度
如`
a =list((1,2,3,4,5))
print(len(a))
(2)max():计算最大值
(3)min():计算最小值
(4)split():分隔字符串
(5)join():拼接字符串
(6)zip():将每个列表对应相同位置的数据作为一个组合,形成新的列表元组
list1=[1,2,6,7]
list2 = ['a','b','c','d']
B = list(zip(list1,list2))#注意zip使用list()引用,注意是圆括号
print(B)
[(1, 'a'), (2, 'b'), (6, 'c'), (7, 'd')]
常用导入函数
- 第一类math()函数
(1)math.floor():向下取整数
(2)math.ceil():向上取整函数
例如:
import math
a = math.floor(4.2)#向下取整
b = math.ceil(4.2)#向上取整
print(a)
print(b)
4
5
- 第二类numpy函数
(1)np.min():返回列表中的最小值
import numpy as np
list1 = [7,8,9,10]
print(np.min(list1))
7
(2)np.argmax():返回最大值对应的索引
import numpy as np
list1 = [7,8,9,10]
print(np.argmax(list1))#返回最大值对应的索引
3
自定义函数
- 函数语法-
- (1)简单函数定义
定义一个avg()函数
def avg(x):
mean_x = sum(x)/len(x)#len()表示计算x列表的长度
return mean_x
x = [1,2,3,4]
avg(x)
print(avg(x))2.5
- (2)计算一定范围内的自然数之和
def ssn(n,beg=1):
s=0
for i in range(beg,n+1):#python中值范围为左开右闭
s += i#累加和
return s
a = ssn(100,1)
print(a)
5050
- (3)函数的变身
- 不存在函数体,直接根据形参位置输入值
def fil(a,b,c):
return (a**2,b**2,c**2)
y = fil(1,2,3)
print(y)
(1, 4, 9)
- 不存在函数体,直接根据形参的关键值给出参数
def luo(a,b ,c):
return(a**2,b**2,c**2)
y = luo(a = 1,c= 4, b =5 )
print(y)
(1, 25, 16)
函数的局部变量和全局变量
局部变量为变量放于函数内部,外部函数不能使用函数内部定义的变量。
全局变量为定义于函数外部的变量,外部函数可以调用全局变量。
- 局部变量格式
def local_var():
local_x = 100#变量定义于函数local_var()之内
print(local_x)
举例:
def local_var():
local_x = 100
return local_x
print(local_x)
NameError: name 'local_x' is not defined#由于变量local_x定义于函数内部,外部函数print()并不能使用变量local_x,导致未定义变量错误
- 全局变量格式
x = 1
def local_var():
x = 50
print(x)
local_var(50)
print(x)
例子 2 :
x = 1
def fy(a):
x = a
return x
print(fy(100))
print(x)#全局变量在函数外部调用时,全局变量还是全局变量x = 1.
100
1
我也是刚刚学习,希望可以帮助有需要的朋友!有问题可以指出,不喜欢勿喷。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/xiaoluohengguo/article/details/109277800