python基础语法 003-1 数据类型列表

1 列表

1.1 列表的定义

  • 关键字:list()
  • 标识:[]  用逗号隔开
  • 使用最频繁的数据类型,列表可以完成大多数集合类型的数据结构实现
  • 支持字符、数字、字符串、甚至可以包含列表,即嵌套
  • 打印列表类型:type()
  • 1个元素的列表表示:可加可不加逗号
#列表表示,[]表示列表
#列表:是存储多个数据的数据类型,如有100条测试用例都保存在列表中,使用是取出来即可
#lsit()
my_list = []
my_list_1 = list() #数据类型转化使用
my_list = ['yuzi','哇哈哈', 'qqq']
print(my_list)

#列表可以存储多种数据类型
#什么数据都可以往里面丢
my_list = ['uuu', 18, [45, '23', 'num']]
print(my_list)

---结果----
['yuzi', '哇哈哈', 'qqq']
['uuu', 18, [45, '23', 'num']]

1.2 列表的操作

长度,len()

索引和切片,和字符串相同

my_list = ['uuu', 18, [45, '23', 'num']]

#列表的长度 与内部多少嵌套无关
print(len(my_list))

---结果---
3

1.3 列表的序列

可以通过索引取获取值,存储时是有顺序的

my_list = ['uuu', 18, [45, '23', 'num']]

#获取某一个元素,索引
#字符串索引操作,可以直接使用到列表中
#字符串索引之后得到的结果:字符串,
# 列表索引得到的结果:该元素是什么数据类型,得到的结果就是什么类型!!因为列表可以存储多种数据类型
print(my_list[1])
print(my_list[-3])

#切片
#列表切片得到的结果:保持原来的格式
print(my_list[0 : 2])

---结果 --
18
uuu
['uuu', 18]

1.4 可变类型,可以做增删改

1.4.1 增,添加元素

mlist.append(value):添加一个元素

mlist.insert(i, value):在指定位置添加

my_list.extend([xxx,xxx1]);添加多个元素

#增加元素,增加一个元素
#列表的最后添加一个元素
my_list.append("一叶障目")
print(my_list)

user.my_list(['sing','dance','book'])

#指定的索引位置添加一个元素
my_list.insert(1, "花海")
print(my_list)

#同时加多个元素,列表合并,加到末尾
my_list.extend(["bye-==", "青花瓷"])
print(my_list)

---结果----
['uuu', 18, [45, '23', 'num'], '一叶障目']
['uuu', '花海', 18, [45, '23', 'num'], '一叶障目']
['uuu', '花海', 18, [45, '23', 'num'], '一叶障目', 'bye-==', '青花瓷']

1.4.2 删,

mlist.remove('h'): 根据值来删除

mlist.pop(indec):根据索引来删除

del 整个变量将其从内存清除出去了,慎用

若找不到对应的值就会报错

 remove

my_list =['uuu', '花海', 18, [45, '23', 'num'], '一叶障目', 'bye-==', '青花瓷']
#删除元素
#删除指定的内容位置,提前知道内容是什么
my_list.remove("一叶障目")
print(my_list)

#删除值得的索引位置
my_list.pop(2)
print(my_list)

----结果--- 
['uuu', '花海', 18, [45, '23', 'num'], 'bye-==', '青花瓷']
['uuu', '花海', [45, '23', 'num'], 'bye-==', '青花瓷']

pop 

my_list =['uuu', '哇哈哈', '花海', [45, '23', 'num'], 'bye-==', '青花瓷', '哇哈哈', '哇哈哈']
#如果存在相同的内容,都移除么?
#只能移除单个,如果需要移除多个需要额外的处理
my_list.remove("哇哈哈")
print(my_list)

---结果-----
['uuu', '花海', [45, '23', 'num'], 'bye-==', '青花瓷', '哇哈哈', '哇哈哈']

 del:慎用

my_list = [1, 2 ]
del my_list[0]
print(my_list)

del my_list
print(my_list)


---------结果 ----
[2]
Traceback (most recent call last):
  File "F:\pythonProject1\uu.py", line 6, in <module>
    print(my_list)
NameError: name 'my_list' is not defined

1.4.3 改

my_list = ['uuu', '花海', [45, '23', 'num'], 'bye-==', '青花瓷', '哇哈哈', '哇哈哈']
#修改某个元素
my_list[0] = '巧克力'
print(my_list)

------结果 ----
['巧克力', '花海', [45, '23', 'num'], 'bye-==', '青花瓷', '哇哈哈', '哇哈哈']

1.4.4  列表可变类型返回值

my_list = ['巧克力', '花海', [45, '23', 'num'], 'bye-==', '青花瓷', '哇哈哈', '哇哈哈']
new_list = my_list.append("hello")
print(my_list)

#None,是一种特殊的数据类型,表示什么都没有
#append在原来的列表中添加一个元素到末尾,最终改变的是my_list
#new_list 得到的是appen返回的值,append得到的结果是为None,由python设计者决定的
#函数时说明
print(new_list)

#remove
elem = my_list.remove('花海')
print(elem)
print(my_list)

#pop 函数得到的结果是我们删除的元素
#如果删除后不再索引这个值,就用remove,删除后还要继续用这个值,就用pop
elem = my_list.pop(0)
print(my_list)
print(elem)

#自己定义的,是可以控制返回的结果 return
d = my_list.append('tt')
print(d) #None

-------结果 -----------------------
['巧克力', '花海', [45, '23', 'num'], 'bye-==', '青花瓷', '哇哈哈', '哇哈哈', 'hello']
None
None
['巧克力', [45, '23', 'num'], 'bye-==', '青花瓷', '哇哈哈', '哇哈哈', 'hello']
[[45, '23', 'num'], 'bye-==', '青花瓷', '哇哈哈', '哇哈哈', 'hello']
巧克力
None

Process finished with exit code 0

1.5 列表函数操作

  • index
  • count
  • clear
my_list = [1, 2]
#清除列表元素
print(my_list.clear()) #None
print(my_list)


----结果 -----
None
[]
  • reverse:倒序
my_list = [1, 77, 6, 2, -5, 55]
#排序列表元素
a = my_list.sort(reverse=True)
print(my_list)


------结果 --------------
[77, 55, 6, 2, 1, -5]
  • sort() 能排序才行,不然会报错,

                对各个元素进行 > 判断, 所以要能执行,key关键字可以对每个元素进行进一步的处理后在比较比如mylist.sort(key = str),转化成字符串以后比较

my_list = [1, 77, 6, 2, -5, 55]
#排序列表元素,升序
print(my_list.sort())#None
a = my_list.sort()
print(a)
print(my_list)

#类型不一样排不了序,排序一般为数字
my_list =['whhh','天行健','魔域']
a =my_list.sort()
print(my_list)


-----结果--------------------------
None
None
[-5, 1, 2, 6, 55, 77]
['whhh', '天行健', '魔域']

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/737400.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Linux基础】文件基本属性

Linux文件基本属性是指文件或目录在Linux系统中具有的一系列特性和信息。这些属性提供了关于文件或目录的详细信息&#xff0c;包括其类型、权限、大小、创建和修改时间等。 文件属性 在 Linux 中我们可以使用 ll 或者 ls –l 命令来显示一个文件的属性以及文件所属的用户和组…

springCloud组件专题(四) --- sentinel

前言 限流&#xff0c;熔断降级概念 限流&#xff1a;顾名思义&#xff0c;就是对一个资源&#xff08;服务或者接口都可以算资源&#xff09;的访问进行限制。简单来说就是限制单位时间内允许资源被访问的次数。常见的算法就是令牌桶算法。 降级&#xff1a;降级其实是一种资源…

常用主流sip协议软电话客户端软件有哪些?—— 筑梦之路

Ekiga 官网地址&#xff1a;Ekiga ~ Free Your Speech Ekiga&#xff0c;原名GnomeMeeting&#xff0c;支持Windows和Linux&#xff0c;是一个兼容SIP和H.323的视频会议程序&#xff0c;兼容VoIP&#xff0c;IP电话&#xff0c;通过Ekiga可以与使用任何SIP和H.323软硬件的远程…

C语言 | Leetcode C语言题解之第188题买卖股票的最佳时机IV

题目&#xff1a; 题解&#xff1a; int maxProfit(int k, int* prices, int pricesSize) {int n pricesSize;if (n 0) {return 0;}k fmin(k, n / 2);int buy[k 1], sell[k 1];memset(buy, 0, sizeof(buy));memset(sell, 0, sizeof(sell));buy[0] -prices[0];sell[0] 0…

周末设计高端企业_集团官网主题Discuz模板

风格名称: 周末设计_高端企业_集团官网 适用版本: Discuz! X3.0、X3.1、X3.2、X3.3、F1.0 风格编码: 使用语言包结构&#xff0c;适合全部编码 周末设计高端企业_集团官网主题Discuz模板

g++制作C++动态库的简洁例程

g制作C动态库的简洁例程 code review! 文章目录 g\制作C动态库的简洁例程1. 创建 C 动态库1.1 动态库源文件1.2 编译动态库 2. 使用动态库2.1 命令行编译链接然后运行2.2 使用 CMake 编译链接然后运行 3.附加笔记&#xff1a;关于运行时是否能找到libmylib.so的问题汇总3.1.g -…

TLS握手中的RTT

文章目录 TLS 1.2 握手过程中的 RTT 次数TLS 1.3 1-RTT 初次TLS1.3 0-RTT 握手过程总结 TLS 1.2 握手过程中的 RTT 次数 TLS 1.2 握手通常需要2 RTT 才能完成。具体步骤如下&#xff1a; 第一次 RTT&#xff1a; 客户端发送 ClientHello&#xff1a;客户端生成一个随机数&…

【离散数学】图的随机生成和欧拉(回)路的确定(c语言实现)

实验要求 变量定义 因为如果我们使用局部变量&#xff0c;每一个函数都会使用这些变量&#xff0c;会让函数的参数越变越多。所以我们定义全局变量&#xff0c;这样就不用在参数中调用了。 #define MAX 100 int arrMap[MAX][MAX] { 0 };//图的矩阵 int degree[MAX] { 0 };…

GEO数据挖掘-富集分析、TinyArray简化流程、多组样本分析more

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 富集分析一些理论知识具体代码 富集不到的补救措施更多资料---问题数据和常见错误分析Part4-复杂数据及其分析多分组数据分析流程 tinyarray简化版本分析流程多分组…

ROS机器人虚拟仿真挑战赛持续学习笔记-20240619

cartographer 需要全手工编译……比较麻烦。 如果使用新版ceres-solver&#xff0c;版本2.x&#xff0c;需要修改源码&#xff0c;部分“接口代码”有改动。 稳妥使用ceres-solver-1.13.0&#xff0c;且需要安装abseil-cpp。 验证是否成功&#xff0c;使用roscd或roslaunch…

C语言| 数组元素的删除

同数组元素的插入差不多。 数组元素的插入&#xff0c;是先移动要插入元素位置后面的所有元素&#xff0c;再插入新元素&#xff0c;长度1。 C语言| 数组的插入-CSDN博客 数组元素的删除&#xff0c;是先删除元素&#xff0c;再把后面的元素往前移动一位&#xff0c;而本程序…

三国之家网站的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;管理员管理&#xff0c;论坛管理&#xff0c;公告管理&#xff0c;三国视频管理&#xff0c;基础数据管理&#xff0c;三国图文管理 前台账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#…

2.树莓派4b+ubuntu18.04(ros版本melodic)+arduino mega自制两轮差速小车,实现建图导航功能

这篇文章介绍arduino使用和安装arduino_bridge 将arduino与树莓派连接 查看arduino的端口号&#xff0c;我们这里查看到的时ttyUSB0 ll /dev/ttyUSB*将当前用户添加进dialout组 sudo usermod -a -G dialout your_user_name然后重启树莓派&#xff0c;然后才能生效 然后如果你…

“Driver not loaded“问题解决方案

这两天又碰到了离谱的&#xff0c;愚蠢的&#xff0c;莫名其妙的&#xff0c;丧尽天良的错误。 之前已经解决过这个问题。这几天又碰上了&#xff0c;明明都已经把相应的dll放到了exe的同级目录&#xff0c;NND还是有问题&#xff01;&#xff01;&#xff01;卡了我一个晚上加…

Linux C/C++ socket函数

目录 socket函数 函数原型 头文件 功能 返回值 参数 错误码 socket函数 函数原型 int socket(int domain, int type, int protocol); 头文件 #include <sys/types.h> #include <sys/socket.h> 功能 创建一个用于通信的端点&#xff0c;并返回一个文件描述符…

tensorRT C++使用pt转engine模型进行推理

目录 1. 前言2. 模型转换3. 修改Binding4. 修改后处理 1. 前言 本文不讲tensorRT的推理流程&#xff0c;因为这种文章很多&#xff0c;这里着重讲从标准yolov5的tensort推理代码&#xff08;模型转pt->wts->engine&#xff09;改造成TPH-yolov5&#xff08;pt->onnx-…

Linux - 探秘 Linux 的 /proc/sys/vm 常见核心配置

文章目录 PreLinux 的 /proc/sys/vm 简述什么是 /proc/sys/vm&#xff1f;主要的配置文件及其用途参数调整对系统的影响dirty_background_ratio 和 dirty_ratioswappinessovercommit_memory 和 overcommit_ratiomin_free_kbytes 实例与使用建议调整 swappiness设置 min_free_kb…

6.XSS-钓鱼攻击展示(存储型xss)

xss钓鱼演示 钓鱼攻击利用页面 D:\phpStudy\WWW\pikachu\pkxss\xfish 修改配置文件里面对应自己的入侵者的IP地址或者域名&#xff0c;对应的路径下的fish.php脚本如下&#xff1a; <?php error_reporting(0); // var_dump($_SERVER); if ((!isset($_SERVER[PHP_AUTH_USE…

分类预测 | Matlab实现GWO-CNN-SVM灰狼冰算法优化卷积支持向量机分类预测

分类预测 | Matlab实现GWO-CNN-SVM灰狼冰算法优化卷积支持向量机分类预测 目录 分类预测 | Matlab实现GWO-CNN-SVM灰狼冰算法优化卷积支持向量机分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现GWO-CNN-SVM灰狼冰算法优化卷积支持向量机分类预测&…

嵌入式学习——数据结构(队列)——day50

1. 查找二叉树、搜索二叉树、平衡二叉树 2. 哈希表——人的身份证——哈希函数 3. 哈希冲突、哈希矛盾 4. 哈希代码 4.1 创建哈希表 4.2 5. 算法设计 5.1 正确性 5.2 可读性&#xff08;高内聚、低耦合&#xff09; 5.3 健壮性 5.4 高效率&#xff08;时间复杂度&am…