Python基础语法day02字符串详解和列表

简介: Python基础语法day02字符串详解和列表

字符串详解

字符串独有功能

检测头尾字符

startwith检测开头返回值为bool类型

endwith检测结尾返回值为bool类型

str = "My name is Anduin"
result1 = str.startwith("My")
result2 = str.endwith("in")
print(result1)#True
print(result2)#True

判断输入结果是否为数字

isdecimal返回值为bool类型

str = "12332"
print(str.isdecimel)#True

       这里有一点需要注意的是有些文章上会让大家使用isdigit来判断,但是这个需要慎用。原因是因为如果输入为序号1(1外面一个圈的)isdigit也会判断为真返回true,这显然是我们不想看到的。

首尾删除

strip如果不填参数默认删除空格

lstrip删除开头指定内容

rstrip删除结尾指定内容

str = "   Hello   "
print(str.strip())#Hello
 
print(str.lstrip())#"Hello   "
 
print(str.rstrip())"   Hello"
 
str1 = str.strip()
#此时str1 = "Hello"
print(str1.strip("H"))#ello
 
print(str1.strip("o"))#Hell
 
print(str1.lstrip("H"))#ello
 
print(str1.rstrip("o"))#Hell

字符串中的替换

replace(A, B)用B替换A

str = "My namw is Anduin"
result = str.replace("Anduin", "AABB")
print(result)#My name is AABB

字符串的分割

split按照指定的字符分割字符串

和上面的rstrip一样,加上r会从右边开始执行

str = "msg|res|val"
result1 = str.split("|")
#["msg", "res", "val"]
result2 = str.split("|", 1)
#["msg", "res|val"]
result3 = str.rsplit("|", 1)
#["msg|res", "val"]

字符串的连接

datalist = ["My", "name", "is", "Anduin"]
v1 = "*".join(datalist)
print(v1)
#My*name*is*Anduin
v2 = "".join(datalist)
print(v2)
#MynameisAnduin

字符串的居中

center居中

ljust居左

rjust居右

以上三个函数都会帮用指定的符号补齐空白部分

str = "Anduin"
str1 = str.center(10, "*")
#**ANduin**
str1 = str.ljust(10, "*")
#Anduin****
str1 = str.rjust(10, "*")
#****Anduin

字符串的公共功能

加、乘功能

主要是字符串+字符串和整数*字符串

str = "Anduin"
print(# * str)
#AnduinAnduinAnduin
print(str + "yyds")
#Anduinyyds

索引功能(很重要)

str[a,b]表示取编号a<=x<b的值,且编号从0开始

str[a,b,c]表示取编号a<=x<b的间隔c值,且编号从0开始

在python中-1表示最后一个,相应的-2,-3,-4表示倒数第二,第三,第三个。

name = "anduin"
print(name[0] + name[1])
#an
print(name[-1], name[-2])  # 字符串只能通过索引取值,不能修改值
#ni
 
print(name[0:2])
#an
 
print(name[2:])
#duin
 
print(name[:3])
#and
 
# 步长 跳着取字符串内容
print(name[0::2])
#adi
 
print(name[::-1])
#niudna可以用来将字符串倒置

求长度

len获取字符串长度

name = "Anduin"
print(len(name))
#6

一个很重要的函数range()

#取0-n的值
range(10)  # [0,1,2,3,4,5,6,7,8,9]
#取1-10的值
range(1, 10)
#间隔为2取1-10
range(1, 10, 2)
#取一到10的值
range(10, 1, -1)

列表

定义

       列表是有序可变的容器,可以存不同类型的元素。这里需要注意字符串是不可变的,列表是可变的。

       我们可以发现,上面对字符串的操作都是生成了一个新的字符串而字符串本身不改变,但是对于列表的操作是改变其本身的。

独有功能

创建空列表和追加

append追加:在列表最后加入一个元素

#创建一个空列表
list = []
#列表的追加
list.append("锤子")
list.append("钟无艳")

元素的指定位置插入

insert可以在指定位置插入,该位置原名来的元素及其以后的元素依次向后移动。

如果插入位置很离谱比如:-1000,999等越界插入,不会报错,会相应在开头或者末尾插入。

area = ["艾泽拉斯", "暴风城", "王宫"]
area.insert(0, "冰冠堡垒")

追加一个列表

extend可以在指定列表后加上一个列表,将两个列表拼接起来(注意使用先后)

area = ["艾泽拉斯", "暴风城", "王宫"]
charictor = ["巫妖王", "阿尔萨斯", "女王"]
area.extend(charictor)
print(area)
#["艾泽拉斯", "暴风城", "王宫", "巫妖王", "阿尔萨斯", "女王"]

元素的两种删除方法

方法一:

使用remove删除列表中的指定元素

area = ["艾泽拉斯", "暴风城", "王宫"]
area.remove("艾泽拉斯")
#["暴风城", "王宫"]

方法二:

使用pop对指定位置进行删除。pop删除会返回删除的元素,效果如下:

area = ["艾泽拉斯", "暴风城", "王宫"]
item = area.pop(1)
#["艾泽拉斯", "王宫"] item = "暴风城"
 
#如果没有指定删除位置,默认删除最后一个
area = ["艾泽拉斯", "暴风城", "王宫"]
item = area.pop()
#["艾泽拉斯", "暴风城"] item = "王宫"

清空列表

clear可以删除列表内所有的元素

area.clear()  # 清空列表

排序功能

sort可以对列表内的元素进行排序(默认从小到大,想要倒序请看下一条)。注意此处有两点提醒:1.尽量对只含有数字的列表排序2.被排序的列表内所有元素必须类型一致。

#从小到大排序
num_lsit = [12, 42, 75, 94, 23, 25, 423]
num_lsit.sort()

字符串倒置

reverse可以将列表颠倒,可以利用这个实现倒序

num_lsit = [12, 42, 75, 94, 23, 25, 423]
num_lsit.reverse()#尾变头, 头变尾
num_lsit.sort(reverse=True)#倒序排序

公共功能

len获取长度

类比上文字符串

方括号索引、步长

类比上文字符串,规则一致,这里只举例增加的功能:del 删除

#从2开始删除后面的
del list[2:]

嵌套

嵌套顾名思义就是在一个列表里存一个列表(列表内的元素可以为任意类型),下面我们来存储一组用户名和密码

user_list = []
user1 = ["anduin", "123456"]
user2 = ["alex", "654321"]
user3 = ["Marry", "888888"]
user_list.append(user1)
user_list.insert(0, user2)
user_list.insert(1000, user3)
print(user_list)

运行结果如图:

有了对于字符串和列表索引的基础,对于嵌套列表的索引我们可以直接看代码:

user_list = []
user1 = ["anduin", "123456"]
user2 = ["alex", "654321"]
user3 = ["Marry", "888888"]
user_list.append(user1)
user_list.insert(0, user2)
user_list.insert(1000, user3)
print(user_list[1])
print(user_list[-1])
print(user_list[1][0])
print(user_list[1][-1])
print(user_list[::2])

for循环

       昨天我们学了while循环。for循环和while循环的主要区别在于:while循环适合次数不知道的循环,for循环适合次数已知的循环。

       例如用户输密码,不知道输入多少次才能对那我们就用while循环,遍历已知个数的列表就用for循环。

"""
这里提供两种for循环遍历列表来解释for循环
"""
list = ["dog", "cat", "pig"]
for item in list:
    print(item)
 
for i in range(len(list)):
    print(list[i])

第一种是设置一个item变量,一次等于list中每一个元素,打印该元素的复制

第二种是获取长度列表[0, 1, 2],用索引的 方法输出列表对应位置的元素

相关文章
|
6天前
|
测试技术 开发者 Python
在 Python 中创建列表时,应该写 `[]` 还是 `list()`?
在 Python 中,创建列表有两种方法:使用方括号 `[]` 和调用 `list()` 函数。虽然两者都能创建空列表,但 `[]` 更简洁、高效。性能测试显示,`[]` 的创建速度比 `list()` 快约一倍。此外,`list()` 可以接受一个可迭代对象作为参数并将其转换为列表,而 `[]` 则需要逐一列举元素。综上,`[]` 适合创建空列表,`list()` 适合转换可迭代对象。
在 Python 中创建列表时,应该写 `[]` 还是 `list()`?
|
9天前
|
数据处理 Python
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
这篇文章介绍了如何使用Python读取Excel文件中的数据,处理后将其保存为txt、xlsx和csv格式的文件。
27 3
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
|
10天前
|
Python
【10月更文挑战第6天】「Mac上学Python 11」基础篇5 - 字符串类型详解
本篇将详细介绍Python中的字符串类型及其常见操作,包括字符串的定义、转义字符的使用、字符串的连接与格式化、字符串的重复和切片、不可变性、编码与解码以及常用内置方法等。通过本篇学习,用户将掌握字符串的操作技巧,并能灵活处理文本数据。
46 1
【10月更文挑战第6天】「Mac上学Python 11」基础篇5 - 字符串类型详解
|
1天前
|
人工智能 Ubuntu IDE
【Python】基础:环境配置与基础语法
本文介绍了Python编程语言及其环境配置方法。Python由Guido van Rossum于1991年创建,以其简洁、易学和强大的功能著称。文章详细讲解了Python的主要特点、Windows和Ubuntu下的安装配置步骤、基础语法、控制流、函数、文件操作、模块使用及面向对象编程等内容,帮助读者快速入门Python编程。
13 4
|
1天前
|
数据处理 开发者 Python
Python中的列表推导式:一种优雅的代码简化技巧####
【10月更文挑战第15天】 本文将深入浅出地探讨Python中列表推导式的使用,这是一种强大且简洁的语法结构,用于从现有列表生成新列表。通过具体示例和对比传统循环方法,我们将揭示列表推导式如何提高代码的可读性和执行效率,同时保持语言的简洁性。无论你是Python初学者还是有经验的开发者,掌握这一技能都将使你的编程之旅更加顺畅。 ####
8 1
|
8天前
|
自然语言处理 Java 数据处理
【速收藏】python字符串操作,你会几个?
【速收藏】python字符串操作,你会几个?
39 7
|
10天前
|
开发者 Python
探索Python中的列表推导式:简化代码的利器
在Python编程中,列表推导式是一种简洁而强大的工具,它允许开发者以一行代码实现复杂的列表操作。本文将深入探讨列表推导式的语法、优势以及实际应用,帮助读者更好地利用这一特性来优化代码。
|
6天前
|
存储 索引 Python
python数据结构之列表详解
列表是Python中极为灵活和强大的数据结构,适合于存储和操作有序数据集合。掌握其基本操作和高级特性对于编写高效、清晰的Python代码至关重要。通过本回答,希望能帮助你全面理解Python列表的使用方法,从而在实际编程中更加游刃有余。
9 0
|
11天前
|
存储 安全 Serverless
Python学习四:流程控制语句(if-else、while、for),高级数据类型(字符串、列表、元组、字典)的操作
这篇文章主要介绍了Python中的流程控制语句(包括if-else、while、for循环)和高级数据类型(字符串、列表、元组、字典)的操作。
23 0
|
17天前
|
Python
Python操作:字符串--列表--元组--字典--运算符 (一)
Python操作:字符串--列表--元组--字典--运算符 (一)
14 0