python(函数初识)

1.函数的返回值

  return关键字的作用

  return是一个关键字,在pycharm里,会变成蓝色的关键字。

1.1没有写返回值  

  如果未定义返回值,会默认返回一个None。

1 def my_len(str):
2     length = 0
3     for i in str:
4         length += 1
5     print(length)
6 ret = my_len(‘hello,world‘)
7 print(ret)

无返回值

1.2 返回一个值

1 def my_len(str):
2     length = 0
3     for i in str:
4         length += 1
5     return length
6 ret = my_len(‘hello,world‘)
7 print(ret)

返回一个值

1.3返回多个值

 返回的多个值会被组织成元祖, 也可以用多个值来接收

 1 def ret_demo():
 2     """
 3
 4     :return: 多个值
 5     """
 6     return 1,2,3,4
 7 def ret_demo2():
 8     return  1,[‘a‘,‘b‘],3,4
 9
10 ret = ret_demo()
11 print(ret) # (1, 2, 3, 4)
12 ret2 = ret_demo2()
13 print(ret2)# (1, [‘a‘, ‘b‘], 3, 4)

返回多个值

原因:序列化解压

 1 # 序列解压一
 2 a,b,c,d = (1,2,3,4)
 3 print(a)
 4 a,_,_,d = (1,2,3,4)
 5 print(d)
 6 a,*_ =(1,2,3,4)
 7 print(*_)
 8 # 同样也适用于字符串、列表、字典、集合
 9 a,b = {‘name‘:‘eva‘,‘age‘:18}
10 print(a,)
11 print(b)

2. 函数的参数

2.1 位置参数

  2.1.1 按照位置传值

1 # 位置传参
2 def mymax(x,y):
3     return x if x>y else y
4 ma = mymax(10,20)
5 print(ma)

按位置传值

  2.1.2 按照关键字传值

1 # 按照关键字位置去传递参数
2 def mymax(x,y):
3     return x if x>y else y
4  ma = mymax(y=10, x=20)
5
6 print(ma)

按照关键字传值

  2.1.2位置、关键字混合使用

1 def mymax(x,y):
2     return x if x>y else y
3 ma = mymax(10,y=20)
4 print(ma)

位置、关键字混合使用

  正确用法:

  ①、位置参数必须在关键字参数的前面

  ②、对于一个形参只能赋值一次

2.2 默认参数

  2.2.1.正常使用

  为什么要有默认参数:将变化比较小的值设置为默认参数

  2.默认参数的定义

1 # 默认参数
2 def stu_info(name,sex="male"):
3     print(name,sex)
4     return ‘a‘
5 print(stu_info(‘alex‘))
6 print(stu_info(‘eva‘,‘female‘))

默认参数

  2.2.2 参数陷阱

  参数陷阱:默认参数是一个可变数据类型

1 # 参数陷阱:默认参数是一个可变数据类型
2 def defult_param(a,l=[]):
3     l.append(a)
4     print(l)
5 print(defult_param(‘egon‘))
6 print(defult_param(‘alex‘))

参数陷阱

2.3 动态参数

动态参数,也叫不定长参数,也就是你需要传递的参数很多,不定个数,这种情况下,需要使用*args,**kwargs,*args是元祖形式,接收出去键值对以外的所有参数。
*kwargs接收的只是键值对的参数,并且只保存在字典中

1 def trans_para(*args, **kwargs):
2     print(args, type(args))
3     print(kwargs, type(kwargs))
4 # 调用
5 trans_para("jinxin",12,[1,2,3,4,],[3,4,],(1,4,7),{"a": "123", "c":456}, country="china")

动态参数

  

原文地址:https://www.cnblogs.com/shine-rainbow/p/9782520.html

时间: 2024-11-05 20:39:20

python(函数初识)的相关文章

Python函数初识

一.函数初识 现在有这么个情况:python中的len方法不让用了,你怎么办? 来测试一下'hello word' 的长度: for循环来实现: s1 = "hello world" length = 0 for i in s1: length = length+1 print(length) 但是,需要求另一个字符串的长度,就需要再写一遍: 这样确实可以实现len方法的效果,但是总感觉不是那么完美?为什么呢? 首先,之前只要我们执行len方法就可以直接拿到一个字符串的长度了,现在为了

python 函数初识和文件操作

文件操作  打开文件:文件句柄 = open('文件路径', '模式') 打开文件的模式 w #以写的方式打开 (不可读,不存在则创建,存在则删除内容) a #以追加的模式打开(可读, 不存在则创建,存在则追加内容) r #以只读模式打开 "+" 表示可以同时读写某个文件 r+ #以读写的模式打开 w+ #以读写的模式打开 a+ #以读写的模式打开 "b”表示处理二进制文件 rb #以二进制模式读打开 wb #以二进制写模式打开 ab #以二进制追加模式打开 rb+ #以二进

Python函数初识二

一.变量的作用域LEGB 1.1.变量的作用域 在Python中,程序的变量并不是在哪个位置都可以访问的,访问权限决定于这个变量是在哪里赋值的.变量的作用域决定了在哪一部分程序可以访问哪个特定的变量名称. 在Python程序中创建.改变.查找变量名时,都是在一个保存变量名的空间中进行,我们称之为命名空间,也被称之为作用域.python的作用域是静态的,在源代码中变量名被赋值的位置决定了该变量能被访问的范围.即Python变量的作用域由变量所在源代码中的位置决定. 1.2.变量作用域的产生 在Py

python之集合、深浅copy、文件操作、函数初识

本节内容:集合.深浅copy.文件操作.函数初识 1.小知识点补充 2.编码二 3.集合 4.深浅copy 5.文件操作 6.函数的初识 1.小知识点补充                                                                                           1.1 小数据池====str.int 小数据池存在的意义就是节省内存 节省内存,位多个变量开辟一个共享空间(str和int) int:-5--256 int===

Python基础之 函数初识

1. 文件操作: 读操作: 格式:f = open("文件路径",mode = "r",encoding = "utf-8") f : 代表文件句柄 文件路径: 绝对路径:从根文件夹下查找 相对路径: 相对于某个文件进行查找 f = open("D:\Python_s25\day08\小姐姐电话号",mode="r",encoding="utf-8")# print(f.read())

Python 基础之函数初识与函数参数

一:函数初识 定义:满足某一个方法 满足某一个功能#(1)功能(包裹一部分代码 实现某一个功能 达成某一个目的)#(2)可以反复调用,提高代码的复用性,提高开发效率,便于维护管理#(3)函数的基本格式:#定义一个函数def 函数名():    code1    code2 #调用函数函数名() #例子:(最简单的一个函数)#函数的定义处 def func():    print("我是一个大帅哥") #函数的调用处func() #(4) 函数的命名规则字母数字下划线  首字符不能为数字

Python学习日志之Python数据结构初识

Python数据结构初识: 一.Python数据结构概述 1.何为数据结构 在程序中,同样的一个或几个数据组织起来,可以有不同的组织方式,也就是不同的存储方式,不同的组织方式就是不同的结构,我们把这些数据组织在一起的结构就叫做数据结构 例如: 有一串字符串:"abc",我们将它重新组织一下,比如通过list()函数将"abc"变成["a","b","c"],那么这个时候数据发生了重组,重组之后的结构就发生了

集合、深浅拷贝、文件操作(读、写、追加)函数初识(参数)

小数据池 #int ==比较数值 is 比较内存地址 id 测试内存地址 #str 不能含有特俗字符 单个元素*数字,不能超过21 i1 = 'a'*20 i = 'a'*20 id一样 i1 = 'a'*21 i = 'a'*21 id不一样 编码 ascii   英文的数字,字母,特殊字符 字节 8位表示一个字节 字符 内容的最小组成单位 abc  a一个字符 中国 中  一个字符 unicode :万国码 期初 两个字节,表示一个字符2**16不够用 升级 四个字节,表示一个字符2**32

Python函数部分

Python函数的初识 Python函数的进阶 Python中的闭包与迭代器 Python生成器/推导式/生成器表达式 Python内置函数二 (递归函数,匿名函数,二分法) 原文地址:https://www.cnblogs.com/heshun/p/10090644.html