python - 列表 / 元组 / 字符串

一.列表

由于pyhon的变量没有数据类型,所以python是没有数组的(因为数组只能存放一种类型,要么全部存放整型,要么全部存放浮点型),只有列表list,所以整数,浮点数,字符串,对象都可以塞进去.

创建一个普通列表:

>>> member = [1,2,3,4]
>>> member
[1, 2, 3, 4]

创建一个混合列表:

>>> member = [1,'哈哈',2,3]
>>> member
[1, '哈哈', 2, 3]

创建一个空列表:

>>> member = []
>>> member
[]

向列表添加元素: 

>>> member = []
>>> member
[]
>>> member.append('小红')
>>> member
['小红']
>>> member.append('小蓝')
>>> member
['小红', '小蓝']

len会输出数组长度:

>>> len(member)
2

insert向数组中插入元素:

>>> member
['小红', '小蓝']
>>> member.insert(1,'小绿')
>>> member
['小红', '小绿', '小蓝']

0表示的是第一个元素:

>>> member
['小红', '小绿', '小蓝']
>>> member[0]
'小红'
>>> member[1]
'小绿'
>>> member[2]
'小蓝'

从数组中获取元素:

>>> member
['小红', '小绿', '小蓝']
>>> temp = member[2]
>>> temp
'小蓝'

remove()函数从数组中删除某个元素:

>>> member
['小红', '小绿', '小蓝']
>>> member.remove('小绿')
>>> member
['小红', '小蓝']

del()函数也表示从列表中删除某个元素:

>>> member
['小红', '小蓝']
>>> del member[0]
>>> member
['小蓝']

pop()函数从列表中取出最后一个元素:

>>> member
['小蓝', '小红', '小绿']
>>> member.pop()
'小绿'

利用索引值,每次我们可以从列表获取一个元素,但是我们总是贪心的,如果一次性需要获取多个元素,有没有办法实现呢?利用列表分片,我们可以简单的实现这个要求。

member[0:2]表示从第0个元素开始获取,共获取2个,member[0],member[1].

>>> member
['小蓝', '小红', '小绿']
>>> member[0:2]
['小蓝', '小红']
>>> member
['小蓝', '小红', '小绿']
>>> member[0:3]
['小蓝', '小红', '小绿']

列表的拷贝:

>>> member
['小蓝', '小红', '小绿']
>>> temp = member[:]
>>> temp
['小蓝', '小红', '小绿']
>>> tem = member
>>> tem
['小蓝', '小红', '小绿']

列表的一些常用操作符:

比较操作符:

>>> list1 = [123]
>>> list2 = [456]
>>> list1 < list2
True

逻辑操作符:

>>> (list1<list2) and (list1 != list2)
True
>>> (list1>list2) and (list1 != list2)
False

连接操作符:

>>> list3 = list1+list2
>>> list3
[123, 456]

重复操作符:

>>> list3 *= 3
>>> list3
[123, 456, 123, 456, 123, 456]

成员关系操作符:

>>> list3
[123, 456, 123, 456, 123, 456]
>>> 123 in list3
True
>>> 234 in list3
False
>>> 123 not in list3
False

count()函数可计算列表中相同元素个数:

>>> member
['小蓝', '小红', '小绿']
>>> member.count('小红')
1

index()函数可索引列表元素位置:

>>> member
['小蓝', '小红', '小绿']
>>> member.index('小红')
1
>>> member.index('小绿')
2
>>> member.index('小蓝')
0

sort()将列表中元素从小到大排序:

>>> temp = [1,5,3,6]
>>> temp
[1, 5, 3, 6]
>>> temp.sort()
>>> temp
[1, 3, 5, 6]

二.元组

由于和列表是近亲关系,所以元组和列表在实际使用上是非常相似的.

创键和访问一个元组:

创建元组(括号可以没有,但逗号一定要有)

>>> temp = 1,2,3,4,5
>>> temp
(1, 2, 3, 4, 5)

访问元组前两个元素:

>>> temp
(1, 2, 3, 4, 5)
>>> temp[:2]
(1, 2)

元组的拷贝:

>>> temp1 = temp
>>> temp1
(1, 2, 3, 4, 5)

注意,不能更改元组中的元素:

>>> temp1
(1, 2, 3, 4, 5)
>>> temp1[1] = 0
Traceback (most recent call last):File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

更新和删除一个元组:只能利用类似字符串的切片的方式间接的更新删除一个元素

>>> temp1
(1, 2, 3, 4, 5)
>>> temp1 = temp1[:2] + (2,) + temp1[3:]
>>> temp1
(1, 2, 2, 4, 5)

列表和元组的区别:元组不允许修改和删除。

三.字符串

capitalize()把字符串的第一个字符改为大写

>>> str = 'string'
>>> str.capitalize()
'String'

casefold()  把整个字符串的所有字符改为小写

>>> str1 = 'STRING'
>>> str1
'STRING'
>>> str1.casefold()
'string'

center(width)将字符串居中,并使用空格填充至长度width的新字符串

>>> str1
'STRING'
>>> str1.center(10)
'  STRING  '

字符串:格式化.

format()方法

{0},{1},{2}表示字段,通过位置参数“I”,“FishC”,“com”传递给format方法,然后对字符串进行格式化。

>>> "{0}love{1}.{2}".format("I","FishC","com")
'IloveFishC.com'

关键字参数{a},{b},{c}

>>> "{a}love{b}.{c}".format("I","FishC","com")
Traceback (most recent call last):File "<stdin>", line 1, in <module>
KeyError: 'a'
>>> "{a}love{b}.{c}".format(a = "I",b = "FishC",c= "com")
'IloveFishC.com'

字符串格式化符号

%c  格式化字符及其ASCII码

>>> '%c %c %c' %(97,98,99)
'a b c'

%s  格式化字符串

>>> '%s' % 'I love you'
'I love you'

 %d  格式化整数

>>> '%d + %d = %d' % (4,5,4+5)
'4 + 5 = 9'

%o  格式化无符号八进制数

>>> '%o' % 10
'12'

%x  格式化无符号十六进制数

>>> '%x' % 10
'a'

%X  格式化无符号十六进制数(大写)

>>> '%X' % 10
'A'

%f  格式化定点数,可指定小数点后的精度,精进小数点后6位

>>> '%f' % 27.658
'27.658000'

格式化操作符辅助命令

m.n m是显示的最小总宽度,n是小数点后的位数

>>> '%5.1f' % 27.678
' 27.7'

默认向右对齐10位

>>> '%10d' % 5
'         5'

- 用于左对齐

>>> '%-10d' % 5
'5         '

#在八进制数前面显示 ‘0o’,在十六进制数前面显示 ‘0x’ 或 ‘0X’

 >>> '%#o' % 10
'0o12'
>>> '%#x' % 10
'0xa'
>>> '%#X' % 10
'0XA'

0   显示的数字前面填充 ‘0’ 取代空格

>>> '%010d' % 5
'0000000005'
>>> '%-010d' % 5
'5         '

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

传输线阻抗匹配电阻端接的方式

电路为什么需要端接&#xff1f; 众所周知&#xff0c;电路中如果阻抗不连续&#xff0c;就会造成信号的反射&#xff0c;引起上冲下冲、振铃等信号失真&#xff0c;严重影响信号质量。所以在进行电路设计的时候阻抗匹配是很重要的考虑因素。 对我们的PCB走线进行阻抗控制已经…

双指针系列第 8 篇:盛水最多的容器。几句话讲明白!

Leetcode 题目链接 思路 取首尾双指针和水量如下所示&#xff0c;设高度函数为 h ( i ) h(i) h(i)&#xff0c;在下图中 h ( l ) < h ( r ) h(l) < h(r) h(l)<h(r)。 观察以 l l l 为左边界所能构成的其他水量&#xff0c;与矮的右边界搭配结果如下。 与高的…

jdk17卸载后换jdk1.8遇到的问题

过程&#xff1a; 1、找到jdk17所在文件夹&#xff0c;将文件夹进行删除。&#xff08;问题就源于此&#xff0c;因为没删干净&#xff09; 2、正常下载jdk1.8&#xff0c;按照网上步骤配置环境变量&#xff0c;这里我参考的文章是&#xff1a; http://t.csdnimg.cn/Svblk …

【RT摩拳擦掌】如何构建RT AVB switchendpoint平台

【RT摩拳擦掌】如何构建RT AVB switch&endpoint平台 一&#xff0c;文档简介二&#xff0c;平台构建2.1 软硬件情况2.2 配置RT1170 AVB端点2.2.1 1块MIMXRT1170开发板做talker配置2.2.2 2块MIMXRT1170开发板做listener配置 2.3 AVB Switch 配置2.3.1 MOTU AVB Switch2.3.2 …

未来的钥匙在于过去:学历史的真正意义,震惊!历史竟然是偶然的?从历史中寻找未来的方向!

我们自幼接受的教育是&#xff0c;学历史是为了相信历史是必然的。中国人民必然战胜日寇的侵略&#xff0c;解放思想和改革开放必定会发生&#xff0c;和平和发展必定是世界的主题&#xff0c;中国经济必定是高速增长…… 然而&#xff0c;在真正的历史学家眼中&#xff0c;历史…

linux应用开发基础知识(八)——内存共享(mmap和system V)

mmap内存映射 内存共享定义 内存映射&#xff0c;简而言之就是将用户空间的一段内存区域映射到内核空间&#xff0c;映射成功后&#xff0c;用户对这段内存区域的修改可以直接反映到内核空间&#xff0c;同样&#xff0c;内核空间对这段区域的修改也直接反映用户空间。那么对…

海外注册 | 欧盟医疗器械法规下免除临床试验的条件与要求

在欧盟医疗器械法规&#xff08;MDR&#xff09;的严格监管下&#xff0c;植入性医疗器械和III类医疗器械通常需要进行临床试验来证明其安全性和性能。 然而&#xff0c;MDR也规定了一些特定情况下免除临床试验的可能性。以下是免除临床试验的条件和要求的详细说明&#xff1a…

MVC(Model-View-Controller)模式

MVC&#xff08;Model-View-Controller&#xff09;模式三个主要组件&#xff1a;模型&#xff08;Model&#xff09;&#xff0c;视图&#xff08;View&#xff09;&#xff0c;和控制器&#xff08;Controller&#xff09;&#xff1a; 模型&#xff08;Model&#xff09;&a…

【高中数学/基本不等式】已知:a,b皆为正数,且1/(2a+b)+1/(a+2b)=1 求:a+b的最小值?

【问题来源】 https://www.ixigua.com/7025123539728466469?logTag1c2fd2e305d60e6277ab 第二题 【问题】 已知&#xff1a;a,b皆为正数&#xff0c;且1/(2ab)1/(a2b)1 求&#xff1a;ab的最小值&#xff1f; 【解答】 解&#xff1a;此题也有分母难消的问题&#xff…

人口萎缩,韩国釜山“进入消失阶段”

KlipC报道&#xff1a;调查显示&#xff0c;随着低生育率和人口老化&#xff0c;釜山人口逐渐萎缩&#xff0c;韩国第二大城市釜山显现出“进入消失阶段”的迹象。 据悉&#xff0c;“消失风险指数”是将20岁至39岁女性人口总数除以65岁及以上人口得到的数值。当该指数大于1.5…

自然语言处理学习(2)基本知识 文本预处理+文本数据分析+文本增强

conda activate DL conda deactivate课程链接 一 一些包的安装 1 stanfordcorenlp 在anoconda prompt 里面&#xff1a;进入自己的conda环境&#xff0c;pip install stanfordcorenlp 进入方式 相关包下载&#xff0c;Jar包我没有下载下来&#xff0c;太慢了&#xff0c;这个…

记录Atlas800服务器环境安装

一、创建安装账号 groupadd HwHiAiUser useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash二、下载依赖包 以下包根据需求自行下载 wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py39_24.5.0-0-Linux-aarch64.sh wg…

debug-mmlab

mmyolo bug1: MMYOLO for yolov5 instance segmentation on balloon dataset getting this error "ValueError: Key img_path is not in available keys. solution: pip install albumentations1.3.1 reference

【计算机考研】408王道四本书的正确使用顺序

个人认为如果对408的分数要求不太高&#xff0c;120分以下跟着王道就够了&#xff0c;而120分以上还需要看一下教材。 王道的书很适合应试考试&#xff0c;书中的内容都是抓重点&#xff0c;咸鱼老师上课讲的内容也非常好&#xff0c;通俗易懂&#xff0c;计算机网络要稍逊一些…

实现Linux C++进程意外退出时信号处理与堆栈打印

文章目录 0. 引言1. 获取堆栈信息流程图2. 实现进程守护与信号处理2.1 进程如何守护化&#xff1f;2.2 信号处理hook函数注册2.3 守护进程代码熟宣 3. 堆栈信息捕获与打印逻辑4. 其他说明5. 附录完整代码 0. 引言 在软件开发中&#xff0c;特别是对于需要高可靠性的后台服务或…

掌握Go语言邮件发送:net/smtp实用教程与最佳实践

掌握Go语言邮件发送&#xff1a;net/smtp实用教程与最佳实践 概述基本配置与初始化导入net/smtp包设置SMTP服务器基本信息创建SMTP客户端实例身份验证 发送简单文本邮件配置发件人信息构建邮件头部信息编写邮件正文使用SendMail方法发送邮件示例代码 发送带附件的邮件邮件多部分…

大模型知识学习

大模型训练过程 数据清洗 拟人化描述&#xff1a;知识库整理 预训练 拟人化描述&#xff1a;知识学习可以使用基于BERT预训练模型进行训练 指令微调 拟人化描述&#xff1a;实际工作技能学习实际操作&#xff1a;让大模型模仿具体的输入输出进行拟合&#xff0c;即模仿学…

Study--Oracle-06-Oracler网络管理

一、ORACLE的监听管理 1、ORACLE网络监听配置文件 cd /u01/app/oracle/product/12.2.0/db_1/network/admin 2、在Oracle数据库中&#xff0c;监听器&#xff08;Listener&#xff09;是一个独立的进程&#xff0c;它监听数据库服务器上的特定端口上的网络连接请求&#xff0c…

Vitis AI - 量化流程详解

目录 1. 简介 2. 具体流程 2.1 校准激活 2.2 量化感知训练 2.3 量化校准配置 2.4 quantization 函数 3. 总结 1. 简介 想象一下&#xff0c;你有一个非常聪明的机器人朋友&#xff0c;它可以帮你做很多事情&#xff0c;比如预测天气。但是&#xff0c;这个机器人的大脑…

01 数据采集层 流量分发第一步规范采集海量数据

《易经》&#xff1a;“初九&#xff1a;潜龙勿用”。潜龙的意思是隐藏&#xff0c;阳气潜藏&#xff0c;阳爻位于最下方称为“初九”&#xff0c;龙潜于渊&#xff0c;是学而未成的阶段&#xff0c;此时需要打好基础。 而模块一我们就是讲解推荐系统有关的概念、基础数据体系…