一、字符串

1、字符串的定义

一般使用引号来创建字符串。创建字符串很简单,只要为变量分配⼀个值即可。

# 使⽤单引号或双引号定义字符串变量
str1 = 'abcdefg'
str2 = "hello world"
print(type(str1))  # <class 'str'>
print(type(str2))  # <class 'str'>

运行结果为:

在这里插入图片描述

name1 = '''I am Tom, Nice to meet you!'''
print(name1)
print(type(name1))

print('-' * 20)

name2 = """I am Jennify,
Nice to meet you!"""
print(name2)
print(type(name2))

运行结果如下:

在这里插入图片描述

注意:
三引号形式的字符串支持换行操作。
在Python中,如果存在多个引号,建议
① 单引号放在双引号中
② 双引号放在单引号中。

2、字符串切片

所谓的切片是指对操作的对象截取其中⼀部分的操作。字符串、列表、元组都支持切片操作。

  • 普通字符串切片
# 左闭右开 (包括开始位置,不包括结束位置)
# 序列名称[开始位置:结束位置]

str1 = "abcdefg"
# 使用切片操作打印字符串str1中索引1到2的字符(不包含索引2)
print(str1[1:4])

运行结果为:

在这里插入图片描述

  • 含步长的字符串切片
# 序列名称[开始位置下标:结束位置下标:步⻓(步阶)]
str1 = "abcdefg"
# 打印字符串str1中从索引1开始到索引6结束(不包括6),步长为2的子字符串
print(str1[1:6:2])

运行结果如下所示:

在这里插入图片描述

注意:
① 不包含结束位置下标对应的数据, 正负整数均可;
② 步长是选取间隔,正数代表从左向右截取,负数代表从右向左截取。默认步长为1。

3、字符串中的查找方法

字符串的查找方法指的是查找子串在字符串中的位置或出现的次数。

1、查找方法
函数作用
find()检测某个子串是否包含在这个字符串中,如果在返回这个子串开始的位置下标,否则则返回-1。
index()检测某个子串是否包含在这个字符串中,如果在返回这个子串开始的位置下标,否则则报异常。
2、代码实现
  • find()函数代码
# find: 查找字符串中是否包含某个字符,如果包含返回当前字符的下标,如果不存在则返回-1
strs = "abcdefg"
print(strs.find("a"))  # 0
print(strs.find("h"))  # -1

运行结果:

在这里插入图片描述

  • index()函数代码
# index 方法:与find方法类似,但是找不到会报错
strs = "abcdefg"
print(strs.index("a"))  # 0
print(strs.index("h"))  # 报错

运行结果:

在这里插入图片描述

4、字符串的修改方法

1、修改方法
函数作用
replace()返回替换后的字符串
split()返回切割后的列表序列
title()所有单词首字母大写
upper()与lower()返回全部大写或小写的字符串
2、代码实现
  • replace()方法

replace()方法基本语法:
字符串.replace(要替换的内容, 替换后的内容, 替换的次数-可以省略)

str1 = 'hello linux and hello linux'
# 把字符串中所有linux字符替换为python
print(str1.replace('linux', 'python'))
# 把字符串中的第⼀个linux进⾏替换为python
print(str1.replace('linux', 'python', 1))
# 把and字符串替换为&&
print(str1.replace('and', '&&'))

运行结果:

在这里插入图片描述

  • split()方法
# 使用replace将=号去掉
strs1 = "username=admin"

# 使用等号("=")作为分隔符对字符串strs1进行分割,并将分割后的结果存储到new_list列表中
new_list = strs1.split("=")
print(new_list)

运行结果:

在这里插入图片描述

注意: split()方法返回的是列表类型的数据

  • title()方法
str2 = "abc"
# title() 将字符串首字母大写
print(str2.title())

运行结果:

在这里插入图片描述

注意: title() 只会将字符串首字母大写,不会将其他字母大写,若其他字母为大写会将其他字母变为小写字母。

str2 = "abC aM"
# title() 只将字符串首字母大写
print(str2.title())

运行结果为:

在这里插入图片描述

  • upper()与lower()方法
str2 = "aBc"
# 将字符串所有数据转换成大写
print(str2.upper())
# 将字符串所有数据转换成小写
print(str2.lower())

运行结果为:

在这里插入图片描述

5、字符串的判断方法

函数作用
isalpha()判断字符串是否是字母或者汉字(字符)组成,不能有数字
isdigit()判断字符串是否由数字组成
isalnum()判断字符串是否由字符和数字组成

代码展示:

str2 = "abc张三"
# isalpha() 判断字符串是否是字母或者汉字(字符)组成,不能有数字
print(str2.isalpha())

str2 = "123张三"
# isdigit() 判断字符串是否由数字(整数)组成
print(str2.isdigit())

str2 = "abc123"
str3 = "12.88"
# isalnum() 判断字符串是否由字符或数字(整数)组成
print(str2.isalnum())
print(str3.isalnum())

运行结果为:

在这里插入图片描述

二、列表

列表可以一次存储多个数据且可以为不同的数据类型,其作用是一次性存储多个数据,程序员可以对这些数据进行的操作有:增、删、改、查。

1、查操作

函数作用
index()指定数据所在位置的下标
count()统计指定数据在当前列表中出现的次数
in判断指定数据在某个列表序列,如果在返回True,否则返回False
not in判断指定数据不在某个列表序列,如果不在返回True,否则返回False
  • index()函数
str1 = ["武松", "西门庆", "潘金莲", "武大郎", "西门庆"]
# 列表中的index()方法:返回列表数据的下标
# 找不到会报错,并且列表中没有find方法
print(str1.index("武大郎"))

运行效果如下:

在这里插入图片描述

注意:index()返回指定数据所在位置的下标,下标是从0开始的

  • count()函数
str1 = ["武松", "西门庆", "潘金莲", "武大郎", "西门庆"]
# 列表中的count():返回列表中某个数据出现的次数
print(str1.count("西门庆"))

运行结果为:

在这里插入图片描述

count():返回列表中某个数据出现的次数

  • in函数
# in: 判断某个数据是否包含在其中
str2 = "abcdefg"
if "h" in str2:
    print("包含")
else:
    print("不包含")


for i in str1:
    if "潘" in i:
        print("包含这个字符")
        

运行结果:

在这里插入图片描述

2、增操作

函数作用
append()增加指定数据到列表中
extend()列表结尾追加数据,如果数据是一个序列,则将这个序列的数据逐一添加到列表
insert()指定位置新增数据
  • append()函数
names = ['孙悟空', '唐僧', '猪⼋戒']
# 在列表的尾部追加⼀个元素"沙僧"
names.append('沙僧')
# 打印列
print(names)

运行结果:

在这里插入图片描述

注意: 列表追加数据的时候,直接在原列表里面追加了指定数据,即修改了原列表,故列表为可变类型数据。

  • extend()函数
# extend() :向列表中追加数据,追加的数据是一个列表
str1 = ["武松", "西门庆", "潘金莲"]
str2 = ["林冲", "鲁智深", "孙二娘"]
str1.extend(str2)
print(str1)

运行结果:

在这里插入图片描述

注意: extend方法比较适合于两个列表进行元素的合并操作

  • insert()函数
# insert(): 向列表中指定位置插入数据
str1 = ["张三", "李四"]
str1.insert(0, "王五")
print(str1)

运行结果:

在这里插入图片描述

3、删操作

函数作用
del 列表[索引]删除列表中的某个元素
pop()删除指定下标的数据(默认为最后⼀个),并返回该数据
remove()移除列表中某个数据的第⼀个匹配项
  • insert()函数
# del:关键词  根据下标进行数据删除
str1 = ["张三", "李四", "王五"]
del str1[0]
print(str1)

运行结果:

在这里插入图片描述

注意: del根据下标进行数据删除

  • pop()函数
# pop方法:根据下标进行删除
str1 = ["张三", "李四", "王五"]
str1.pop(1)
print(str1)

运行结果:

在这里插入图片描述

注意: pop()函数是删除指定下标的元素,如果不填写下标,默认删除最后⼀个。其返回结果:就是删除的这个元素

  • remove()函数
# remove方法:根据元素值进行删除
str1 = ["张三", "李四", "王五"]
str1.remove("李四")
print(str1)

运行结果:

在这里插入图片描述

注意: remove()根据元素值删除匹配的元素

4、 改操作

函数作用
列表[索引] = 修改后的值修改列表中的某个元素
reverse()将数据序列进行倒叙排列
sort()对列表序列进行排序
  • 列表[索引] = 修改后的值
# 根据列表的下标进行数据更改
str1 = ["张三", "李四", "王五"]
str1[2] = "赵六"
print(str1)

运行结果:

在这里插入图片描述

  • reverse()函数
# reverse:将列表倒过来
str1 = [30, 10, 2, 3, 4]
str1.reverse()
print(str1)

运行结果:

在这里插入图片描述

  • sort()函数
# sort:排序
str1 = [30, 10, 2, 3, 4]
str1.sort()
print(str1)
print(f"当前列表的长度:{len(str1)}")

运行结果:

在这里插入图片描述

三、元组

1、元组简介

当我们想要存储多个数据且数据不允许更改时可以使用元组,元组可以存储多个数据且元组内的数据是不能修改的。定义元组使用小括号,且使用逗号隔开各个数据,数据可以是不同的数据类型。注意:如果定义的元组只有⼀个数据,那么这个数据后面也要添加逗号,否则数据类型为唯一的这个数据的数据类型。

2、元组的相关操作方法

函数作用
元组[索引]根据索引下标查找元素
index()查找某个数据,如果数据存在则返回对应的下标,否则报错
count()统计某个数据在当前元组出现的次数
len()统计元组中数据的个数
  • 元组[索引]
nums = (10, 20, 30)
print(nums[2])

运行结果:

在这里插入图片描述

  • index()函数
str1 = ("张三", "李四", "王五", "赵六", "李七")
# index:返回当前元素的下标
print(str1.index("王五"))

运行结果:

在这里插入图片描述

  • count()函数
str1 = ("王五", "李四", "王五", "赵六", "王五")
# count:统计某个元素出现的次数
print(str1.count("王五"))

运行结果:

在这里插入图片描述

  • len()函数
str1 = ("王五", "李四", "王五", "赵六", "王五")
# len:查看数据的总数
print(len(str1))

运行结果:

在这里插入图片描述

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐