python中如何使用函数改变list
作者:健忘绅士辣鸡君 发布时间:2022-06-04 13:38:38
标签:python,函数,list
python使用函数改变list
函数内改变外部的一个list如果这么写
def rotate(nums, k):
length=len(nums)
if length!=0:
nums=nums[length-k:length]+nums[0:length-k]
l=[1,2,3,4,5,6,7]
rotate(l,3)
print(l)
外部的list并没有改变,而返回的是[1, 2, 3, 4, 5, 6, 7]
要改变list中的内容需要这么写
def rotate(nums, k):
length=len(nums)
if length!=0:
nums[:]=nums[length-k:length]+nums[0:length-k]
l=[1,2,3,4,5,6,7]
rotate(l,3)
print(l)
这样就返回的是[5, 6, 7, 1, 2, 3, 4]
python list函数用法
描述
list()函数是Python的内置函数。它可以将任何可迭代数据转换为列表类型,并返回转换后的列表。当参数为空时,list函数可以创建一个空列表。
语法
list(object)
名称 | 说明 | 备注 |
object | 待转换为列表的数据类型 | 可省略的参数 |
使用示例
1. 创建一个空列表(无参调用list函数)
>>> test = list()
>>> test
[]
2. 将字符串转换为列表
>>> test = list('cat')
>>> test
['c', 'a', 't']
3. 将元组转换为列表
>>> a_tuple = ('I love Python.', 'I also love HTML.')
>>> test = list(a_tuple)
>>> test
['I love Python.', 'I also love HTML.']
4. 将字典转换为列表
>>> a_dict = {'China':'Beijing', 'Russia':'Moscow'}
>>> test = list(a_dict)
>>> test
['China', 'Russia']
⚠️注意:将字典转换为列表时,会将字典的值舍去,而仅仅将字典的键转换为列表。如果想将字典的值全部转换为列表,可以考虑使用字典方法dict.values()
5. 将集合转换为列表
>>> a_set = {1, 4, 'sdf'}
>>> test = list(a_set)
>>> test
[1, 'sdf', 4]
6. 将其他可迭代序列转化为列表
下面的代码将range类型和map类型的可迭代序列转换为列表:
>>> test1 = list(range(10))
>>> test2 = list(map(int, [23.2, 33.1]))
>>> test1
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> test2
[23, 33]
注意事项
1. 参数必须是可迭代序列对象
list函数的参数必须是可迭代对象。当选用不可迭代的对象作为参数时,Python报错。
>>> test = list(12)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'int' object is not iterable
将列表转换为列表
可以使用list函数将列表转换为一个列表,这么做Python不会有任何的异常或者报错。它的作用是将参数列表进行深拷贝:
if __name__ == '__main__':
source_list = ["a", "b", "c", "d"]
new_list1 = list(source_list)
print(id(source_list), id(new_list1))
# output: 4313597760 4312890304
new_list2 = source_list
print(new_list1)
# output: ['a', 'b', 'c', 'd']
print(new_list2)
# output: ['a', 'b', 'c', 'd']
source_list[0] = "e"
print(new_list1)
# output: ['a', 'b', 'c', 'd']
print(new_list2)
# output: ['e', 'b', 'c', 'd']
来源:https://blog.csdn.net/why12345678901/article/details/81271728


猜你喜欢
- 一、VScode下载官网Download Visual Studio Code - Mac, Linux, Windows点击64 bit会
- 目录一、socketserver实现并发二、验证客户端合法性一、socketserver实现并发tcp协议的socket是只能和一个客户端通
- python之参数,定义时小括号中的参数,用来接收参数用的,称为 “形参”调用时小括号中的参数,用来传递给函数用的,称为 “实参”。1、思考
- 研究好多天了,也试过好多办法了,总结出目前发现最好的方法:先说一下基本的东西:<%@ codepage=65001%>
- 因为项目需要数据验证,看bootstrapValidator 还不错,就上手一直,完美兼容,话不多说。bootstrap:能够增加兼容性的强
- 一、环境配置需要 pillow 和 pytesseract 这两个库,pip install 安装就好了。install pillow -i
- 一,写在前面的话最近公司需要按天,按小时查看数据,可以直观的看到时间段的数据峰值。接到需求,就开始疯狂百度搜索,但是搜索到的资料有很多都不清
- 简介Part1:写在最前 OneProxy平民软件完全自主开发的分布式数据访问层,帮助用户在MySQL/
- 本文实例讲述了python使用pymongo与MongoDB基本交互操作。分享给大家供大家参考,具体如下:本文内容:pymongo的使用:安
- 去掉html中的table代码 Function OutTable(str) dim a,re&nb
- 下面给大家介绍下mysql 8.0.16 初次登录修改密码mysql数据库初始化后初次登录需要修改密码初次登录会碰到下面这个错误ql>
- 1、什么是数据库连接池就是一个容器持有多个数据库连接,当程序需要操作数据库的时候直接从池中取出连接,使用完之后再还回去,和线程池一个道理。2
- 核心代码function convert2utf8($string) { return iconv(&
- 在pandas中的groupby和在sql语句中的groupby有异曲同工之妙,不过也难怪,毕竟关系数据库中的存放数据的结构也是一张大表罢了
- 介绍RANGE分区基于一个给定的连续区间范围,早期版本RANGE主要是基于整数的分区。在5.7版本中DATE、DATETIME列也可以使用R
- 前言所谓“基础不狠,人站不稳”,对于任何一种编程语言来说基础往往都是重中之重,以Python为例,其
- 本文实例为大家分享了python3判断url链接是否为404的具体代码,供大家参考,具体内容如下import pymysqlimport t
- 本文实例讲述了Python设计模式之代理模式。分享给大家供大家参考,具体如下:代理模式(Proxy Pattern):为其他对象提供一种代理
- 我目标文件夹下有一大批图片,我要把它转变为指定尺寸大小的图片,用pthon和opencv实现的。以上为原图片。import cv2impor
- 事物绝非十全十美总有强差人意的一面,之前针对浮动分析了其引起文本重影的怪异问题,而作为浮动布局的最佳搭档定位布局也存在一定的缺陷。围绕着定位