100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > python 自定义函数的返回值

python 自定义函数的返回值

时间:2023-12-20 05:56:55

相关推荐

python 自定义函数的返回值

python中自定义的函数,有的有返回值,有的没有返回值,且返回值的类型也需注意。

1、无返回值

例如 list 的 append 操作就是无返回值的,换句话说就是不能进行如下的连续操作:

list = []

list.append(1).append(2)

2、返回值的类型

自定义函数的返回值是 list/tuple,或者单个变量,或者返回生成器、map类型,有时候需要转化为list、tuple等使用。

例如 plt.plot(…) 就返回一个 plot 对象的 list。

很多函数可能需要返回多个值,所以就会返回 tuple 作为数据类型,但很多时候其返回的 tuple 中又只有一个元素,此时就加逗号,

line, = ax.plot(Data[0, 0], Data[0, 1],color = ‘red’,lw = 1.5, label = ‘Pos’)

3、python 连接数据库后,读取的数据用fetchall()获取得到的是tuple,在语法上,返回一个tuple是可以省略括号的,而多个变量可以同时接收一个tuple,按位置赋给对应的值。

元组tuple的好处,相对于 list 而言,tuple 是不可变的,这使得它可以作为 dict 的 key,或者扔进 set 里,而 list 则不行。tuple 放弃了对元素的增删(内存结构设计上变的更精简),换取的是性能上的提升:创建 tuple 比 list 要快,存储空间比 list 占用更小。所以就出现了“能用 tuple 的地方就不用 list”的说法。多线程并发的时候,tuple 是不需要加锁的,不用担心安全问题,编写也简单多了。

创建和访问一个元组如果创建一个空元组,直接使用小括号即可;如果要创建的元组中只有一个元素,要在它的后面加上一个逗号‘,’。

直接在同一个元组上更新是不可行的,但是可以通过拷贝现有的元组片段构造一个新的元组的方式解决。

通过分片的方法让元组拆分成两部分,然后再使用连接操作符(+)合并成一个新元组,最后将原来的变量名(temp)指向连接好的新元组。在这里就要注意了,逗号是必须的,小括号也是必须的!

如下示例:

temp = (“龙猫”,“泰迪”,“叮当猫”)

temp = temp[:2] + (“小猪佩奇”,)+temp[2:]

print(temp)

(‘龙猫’, ‘泰迪’, ‘小猪佩奇’, ‘叮当猫’)

删除元组中的元素:对于元组是不可变的原则来说,单独删除一个元素是不可能的,当然你可以利用切片的方式更新元组,间接的删除一个元素。如下示例:

temp = (‘龙猫’, ‘泰迪’, ‘小猪佩奇’, ‘叮当猫’)

temp = temp[:2] + temp[3:]

print(temp)

(‘龙猫’, ‘泰迪’, ‘叮当猫’)

在日常中很少用del去删除整个元组,因为Python的回收机制会在这个元组不再被使用的时候自动删除。成员关系操作符 in 和 not in 也可以直接应用在元组上,这跟列表是一样的。

4、list的特点如下:

1.可以用list()函数或者方括号[]创建,元素之间用逗号’,‘’分隔。

2.列表的元素不需要具有相同的类型

3.使用索引来访问元素

4.可切片

元组tuple和列表list可以互相转化,分别用tuple(seq)和list(seq)实现。

行列增加:list=[1,2,3]

df=df.append(list) 表现出的是列增加,list.append()方法仅适用于向后面添加元素,参数可以是任何东西,将作为元素添加到列表尾部;而list.extend()可以适用多个元素在一个列表的方法进行扩展原列表,参数是序列,序列中的元素将逐项添加到列表的尾部。我们从字面的意思也可以看出来。append是添加(一个),extend是扩展(多个)。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。