学习python第九天

函数

1.函数概念及定义

函数就是完成特定功能的代码的集合,这组代码可以作为一个单位使用,并且给他取一个名字。
# 可以通过函数名在程序的不同地方多次执行(函数执行)1)降低编程的难度。
	通常将一个复杂的大过程分解成n个小过程,然后将小过程划分成更小的过程,当过程细化为足够简单时,我们就可以分而治之。各个小过程解决了,大过程就迎刃而解了。
(2)代码复用
	避免重复编写某段代码,提高效率。
def 函数名(参数):
	pass:不进行任何操作,但可以保证格式正确(这是常用于函数构建布局,防止格式报错)
	return:返回值(没有默认None

2.函数命名规则:

1.只能是一个词。
2.只能包含字母、数字、和下划线。
3.不能以数字开头。
4.不可以使用关键字(重名)
5.取名尽量有意义

3.函数调用

​ 函数名(参数)

​ 有参数就传参数

4.return:

​ return:返回值(没有默认None)

​ 注意:return–函数的返回值,返回值就可以赋值,返回值可以赋值给变量

​ print只是将数据打印在控制台上面展示

5.案例

def demo():
    a = 1
    return a

num = demo()
print(num)

函数参数

1.必备参数

# 写几个传几个

def func(x):
    print(x)

func(10) # 或者指定传入 func(x=10)

2.默认参数

def func(x, y = None)print(x, y)
    
func(x=10)
func(x='哈哈',y='帅')

# 默认参数设置在必备参数后面

3.不定长参数

*args: 接收除字典(键值对)以外的类型数据
**kargs:接收字典类型数据 ---- 键值对形式 :# 例如:a = 1
def func(*args, **kargs):
    print(args)
    print(kargs)
    
func(1,2,3,'hhahah', [1,2,3], a=1, b=2)
# (1, 2, 3, 'hhahah', [1, 2, 3])
# {'a': 1, 'b': 2}

func(1,2,3,'hhahah', [1,2,3],{'a': 1, 'b': 2})
# (1, 2, 3, 'hhahah', [1, 2, 3], {'a': 1, 'b': 2})
# {}

4.小结

# 1.参数类型
	必备参数:调用函数必须传入
    默认参数: 调用函数时可以不用进行传参,有默认值
    不定长参数:函数调用时可以不用传不定长参数。也可以传任意长度
# 2.参数调用
	位置参数,关键字参数
# 3.在python中,接收参数无类型限制(可接收任意对象), 只有函数内部根据应用场景进行限制

# 4.注意事项: 参数定义时先后顺序:必备参数,默认参数, *args, **kargs

常见的内置函数

1.内置对象查看

# dir()

a = [1]
print(dir(a))

2.常见函数

函数概念
len()查长度
min()求最小值
max()求最大值
sorted()排序
reversed()反向(返回一个反转的迭代器)
sum()求和

3.进制转化

函数概念
bin()转化二进制
int(‘转化进制数据’,‘进制类型’)转化为十进制
oct()转化为八进制
hex()转化为十六进制
ord()字符转ASCLL码
chr()ASCLL码转字符

高级内置函数

1.enumerate:

​ 返回一个可以枚举对象(转化序列类型,输出(下标,元素)元组组成的)

li = ['张''三']

s = enumerate(li)
# <enumerate object at 0x000001D4A55138C0>

print(list(s))
# [(0, '张'), (1, '三')]

for i in s:
    print(i)

2.eval:

​ 取出字符串里面的内容,将str里面看出有效的表达式,来进行返回计算结果

a = '1+2+3'
print(eval(a))

3.exec:

​ 执行编译过的字符串

x = 3
y = 4

exec('sums = x+y')
print(sums)

4.filter

​ 过滤器

def func(x):
    return x > 5


li = [i for i in range(8)]
# filter(执行筛选条件函数, 筛选数据)
print(list(filter(func, li)))

5.map()

​ map(fuction, iterable): 对iterable里面的每个元素都应用fuction函数

li = [1,2,3]

def func(x):
    return x*10

print(list(map(func, li)))

6.zip

​ 将对象逐一配对(有就配,没有就不配

l1 = [1,2,3]
l2 = ['a', 'b']

print(dict(zip(l1, l2)))
print(list(zip(l1, l2)))

# iter--- 创建迭代器对象,并打印项目, 通过next可以逐一打印: ---- 内建函数
x = iter(["apple", "banana", "cherry"])
print(next(x))
print(next(x))
print(next(x))

# 实例  ---- for循环:遍历迭代对象
l1 = [1,2,3]
l2 = ['a', 'b']

s = zip(l1, l2)  # 配对
print(s)

its = iter(s)  # iter创建迭代对象
print(its)

print(next(its))  # next取值
print(next(its))


s = zip(l1, l2)    # 配对
print(s)

for i in s:   # 自动实现操作
    print(i)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值