Python之字符类型

news/2025/3/12 17:15:08/文章来源:https://www.cnblogs.com/weiyus1916/p/18535539

一、索引

索引在公司中一般也叫下标,或角标

定义:可我们可以直接使用索引来访问序列中的元素,同时索引可分为正向索引和负向索引两种,而切片也会用到索引,如下图:

Python中有序列:字符,列表,元组

无序:集合

正向索引:从0开始

负向索引:-1开始

二、切片

定义:切片是指对操作的对象截取其中一部分的操作,字符串,列表,元组都支持切片操作。

切片的语法:【开始索引:结束索引 :步长】
备注:显示结果:包含开始值,不包含结束值

str="abcdefghigklmn"
print(str[1:3]) # 结果:bc
print(str[0]) #结果:a
print(str[:]) #结果:abcdefghijklmn
print(str[3:]) #结果:defghijklmn
print(str[::-1]) #nmlkgihgfedcba 反转(重点)
print(str[::1]) #abcdefghigklmn
print(str[1:8:2]) #bdfh
print(str[-1:-8:-2]) #nljh
print(str[0:-1]) #开始到倒数第二个 #abcdefghigklm
print(str[2:3]) #c

========================================
字符串:

str="abcdefcnamceac"
str1="abc"
str2="EFG"
str3="123"
str4="abc123"
str5="Abc789"
print(str.capitalize()) #首个字符大写 # Abcdef
print(str.title()) #首个字符大写 Abcdef

print(str.count('a')) # 统计字符个数 #2个
print(' '.join(str)) #把集合中字符按照符号分隔 #a/b/c/d/e/f/n/a/m/e
print(str.split("c")) # 通过制定的内容进行表示分割 #['ab', 'defname']
print(str.strip("a")) #删除字符的开头和结尾的字符 #bcdefname
print(str.lstrip("a")) #删除字符的开头字符 #bcdefnamea
print(str.rstrip("a")) #删除字符的末尾字符 #abcdefname
print(str.startswith("a")) #判断字符串是否以某个字符开头 #True
print(str.startswith("b")) #判断字符串不是以某个字符开头 #False
print(str.endswith("a")) #判断字符串是以某个字符结尾 #True
print(str.endswith("b")) #判断字符串不是以某个字符结尾 False
print(str.find("c")) #find是从左边开始查 #2
print(str.rfind("c")) #rfind是从右边开始查 #9
print(str.replace("c","123")) #替换,"c"是原值,"123"是新值
print(str.replace("c","123",2)) #指定替换的次数,是从左往右替换
print(str1.upper()) #将字符所有的小写字符转换成大写字母输出
print(str2.lower()) #将字符所有的大写字符转换成小写字母输出
print(str.isdigit()) #判断字符串中是否全是数字 #False
print(str3.isdigit()) #判断字符串中是否全是数字#True
print(str4.isalpha()) #判断字符串中是全是字母#False
print(str4.isalnum()) ##判断字符串中是全是字母或全是数字或数字和字母组合 #True
print(str.istitle()) #判断首个字母是否大写 #False #必须是只有首个字符大小,其他字母为小写
print(str5.istitle()) # True
print(str1.islower()) #判断字符是否都是小写
print(str2.isupper())#判断字符是否都是大写

========================================
列表:

类型:<class 'list'>
符号:[]
定义:列表list 是一组有序存储的数据,也是python常见的序列值一、序列中的每个元素都分配一个索引,第一个元素的索引是0,第二个元素的索引是1,依次类推,序列都可以进行操作包括索引,切片。

定义列表的方法有两种:
方法一:list1=[1,2,3,4] #直接通过[]进行定义
方法二:list2=list('12345) #直接通过list转换

案例1:
list=[1,2,3,4,5]
print(type(list))

案例2:
str="abc"
print(type(str))
s=list(str)
print(type(s))

1、列表中索引和切片
(1)通过索引添加值(覆盖原有值)
案例:
list1=[1,2,3,4,5]
list1[1]="s"
print(list1) #结果:[1, 's', 3, 4, 5]

(2)list1=[1,2,3,4,5]
list1[2:]="我们暴富15班"
print(list1)
结果:[1, 2, '我', '们', '暴', '富', '1', '5', '班']

2、列表中的函数
(1)append 添加元素 默认添加在最后一位

案例:
list1=[1,2,3,4,5]
list1.append("name")
print(list1)

(2)extend:连接两个列表
list1=[1,2,3,4,5]
list2=[6,7,8,9,10]
list1.extend(list2)
print(list1) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(list2)#[6, 7, 8, 9, 10]

(3)insert( index, value) 在指定位置插入数据
list1=[1,2,3,4,5]
list1.insert(2,"t")
print(list1) 结果:[1, 2, 't', 3, 4, 5]

(4)remove删除列表中的值,从左开始删除,只删除第一个
list1=[1,2,3,4,5]
list1.remove(3)
print(list1)

(5)del 索引删除值
list1=[1,2,3,4,3,5]
del list1[3]
print(list1) 结果:[1, 2, 3, 3, 5]

(6)index 在列表中找元素所对饮过的索引值
list1=[1,2,3,4,3,5] #索引位是3
print(list1.index(4))

(7)sort 函数,实现列表的升序排列
list1=[9,2,0,4,3,5]
list1.sort()
print(list1) #结果:[0, 2, 3, 4, 5, 9]

(8)sorted 排序
list1=[9,2,0,4,3,5]
print(sorted(list1,reverse=True)) #降序 #[9, 5, 4, 3, 2, 0]
print(sorted(list1,reverse=False)) #升序 # #[0, 2, 3, 4, 5, 9]

(9)reverse 函数:列表元素反转
list1=[9,2,0,4,3,5]
list1.reverse()
print(list1)
(10)pop 函数
默认移除列表中最后一个元素,并返回元素值
list1=[9,2,0,4,3,5]
list1.pop()
print(list1) #[9, 2, 0, 4, 3]

============================
元组
元组不可变

定义:元组是python中一种数据结构,元组由不同的元素组成,每个元素可存储不同类型的数据;如字符串,数字,甚至元组,
元组是“写保护”的,即元组中元素作为一个整体,创建后不能做任何修改操作。
a=(1,2,3)
print(type(a))
print(a)

当出现一个字符时,加上逗号,(就变成了元组)
b=(1,)
print(type(b))
print(b)

元组函数运用:
(1)index 索引
a=(1,2,3)
print(a.index(2))
conct 统计
print(t2.count(1)) # 统计元素
(2)元组需要修改,只能将元组转换成列表,使用列表的函数操作,列表操作完在转换成元组

a=(1,2,3)
print(type(a))
b=list(a) #通过list将元组转换成列表
print(type(b))
print(b)
b.insert(2,"s") #通过列表中的函数取操作转换后的元组
print(b)
yz=tuple(b) #通过tuple 将列表转换成元组
print(type(yz))
print(yz) #打印元组
(3)元组转换列表
a=(1,2,3)
print(type(a))
b=list(a)
print(type(b))
(4)列表转换成元组
s=[1,2,3]
print(type(s))
c=tuple(s)
print(type(c))
print(c)

(5)元组和列表的区别:
相同:
1、都是有序,
2、都支切片、迭代等操作
不同:
1、list是可变对象,元组tuple是不可变对象
2、tuple不可变,使用tuple编写的代码更安全
3、列表是【】,元组是()
4、列表的字符类型:list ,元组的字符类型:tuple

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

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

相关文章

Navicat:数据库备份

# Navicat # 数据库备份原创 OpsEye前文我们简单介绍了Navicat的功能和使用场景,本文我们将详细的讲解使用Navicat进行数据库备份和还原的相关操作。 Navicat工具下载 下载官网:https://www.navicat.com.cn/download/navicat-premium 根据实际系统情况,选择下载。我们这里是…

居然都到 7.x版本了!!!雷池 WAF 社区版 7.x 的体验记录

雷池 WAF 简介 雷池 WAF,英文名 “SafeLine”,由长亭科技出品的一款 Web 应用防火墙,可以保护 Web 服务不受黑客攻击,早年就以 ”智能语义分析技术“ 闻名于安全行业。 雷池社区版是长亭基于原有技术打造的一款开源 WAF,主打简单易用,我猜的不错的话长亭应该是想借这种产…

windows基础

windows基础 1、windows&linux 微软windows操作系统,俗称windows 文件系统 linux: fhs目录结构,块设备挂载到目录(一切都是文件) win: 以驱动器盘符起始,或通过目录挂载分区 路径格式 linux: /开始,区分大小写(左斜线) win: \分隔路径,不区分大小写(右斜线)…

Ubuntu网页打不开,或只能打开一部分

设置固定IP后,网关没设置或没设置对导致的。 查看连接的网络的网关,用已经连了该网络的windows系统电脑,cmd里输入ipconfig 将Ubuntu的该网络的网关设置下,重新开闭下就可以了。 桌面右上角——wifi设置——已连接的wifi后边的设置(下图) 断开再连接下

访问浪潮带外BMC界面的远程控制台重定向(KVM)无法访问,提示JViewer未签名,mac电脑安装JDK8

报错截图:安装JDK8 下载JDK1.8的安装包 Java Downloads | Oracle下载的安装包双击按提示流程安装:按照完成以后、我们可以查看JDK的安装路径、在资源库/Library下面会出现一个Java的文件夹、目录层级如下:/Library/Java/JavaVirtualMachines/jdk-1.8.jdk 打开终端窗口 按快捷…

Nginx反向代理之proxy_redirect指令【转】

proxy_redirect 该指令是用来重置头信息中的"Location"和"Refresh"的值。 语法:proxy_redirect redirect replacement; proxy_redirect default; proxy_redirect off;默认值: proxy_redirect default; 编写位置:它可以存储在http、server、location里面…

嵌入式采集网关(golang版本)

为了一次编写到处运行,使用纯GO编写,排除CGO,解决在嵌入式中交叉编译难问题硬件设备:移远EC200A-CN LTE Cat 4 无线通信模块,搭载openwrt操作系统,90M内存qq:505645074

tag

最近遇到的某些面试官我:

长尾效应

在正态分布中,曲线中间凸起的是“头”,两边相对平缓的部分叫做“尾”。 对于绝大部分的需求来说,都会集中在中间凸起的“头”处,但是除了“头”,还有两边长长的“尾”。不同于中间的“头”,分布在尾部的需求是个性化的,零散的,少量的需求。这部分需求,构成了一条长长的…

树莓派开机自启动热点(使用有线eth0上网,使用wlan0进行热点)

一、背景内容 其实就是接了一单,有人需要我帮忙配置一下树莓派开机启动热点。这边做个记录,该方式树莓派4B、3B都可以使用。 二、实际操作 1、使用网线连接路由器和树莓派 树莓派的网络接口一共有三个,分别是:eth0:有线网络接口(以太网接口) wlan0:无线网络接口(WiFi接…

07C++选择结构(1)

1、基础知识; 2、if语句; 3、if-else 语句; 4、if语句嵌套; 5、字符串类型string一、基础知识 1、关系运算符 因为我们要对条件进行判断,必然会用到关系运算符:名称 大于 大于等于 小于 小于等于 等于 不等于符号 > >= < <= == !=关系表达式的值是一个逻辑值…

测试开发通关秘籍五: 彻底搞懂map,reduce和filter高阶函数

热爱技术的小牛 测试开发通关秘籍五: 彻底搞懂map,reduce和filter高阶函数 map、r测试开发通关秘籍五: 彻底搞懂map,reduce和filter高阶函数 map、reduce 和 filter 是 Python 中用于处理可迭代对象(如列表、元组等)的高阶函数。它们分别用于不同的操作,适合于不同的场景…