Python 基础(七):字符串

这一期我们讲字符串。


字符串的创建与赋值

直接赋值:使用单引号`'`、双引号`"`或三引号`'''`或`"""`将字符序列括起来,然后赋值给变量。例如:

  str1 = 'Hello'
  str2 = "World"
  str3 = '''这是一个
  跨行的字符串'''
  str4 = """另一个
  跨行的字符串"""


 转义字符:在字符串中,反斜杠`\`用于表示转义字符。

 `\n`表示换行

`\t`表示制表符

`\\`表示反斜杠本身

`\'`表示单引号

`\"`表示双引号

`str = 'This is a line.\nThis is another line.'`,输出时会换行显示。


字符串的拼接

使用加号`+`:将两个或多个字符串连接起来。

  str1 = "Hello"
  str2 = "World"
  result = str1 + " " + str2
  print(result)  # 输出:Hello World


使用`join()`方法:将一个可迭代对象(如列表)中的字符串元素连接成一个字符串,指定的字符串作为分隔符。例如:


  list1 = ["Hello", "World", "Python"]
  result = " ".join(list1)
  print(result)  # 输出:Hello World Python

字符串的索引和切片

索引:通过索引访问字符串中的单个字符。索引从 0 开始,正数表示从左到右,负数表示从右到左。例如:

  str = "Hello"
  print(str[0])  # 输出:H
  print(str[-1])  # 输出:o

切片:通过切片操作获取字符串中的一部分。格式为`[start:end:step]`,其中`start`是起始索引(包含),`end`是结束索引(不包含),`step`是步长(默认为 1)。

  str = "HelloWorld"
  print(str[0:5])  # 输出:Hello
  print(str[5:])   # 输出:World
  print(str[:5])   # 输出:Hello
  print(str[::2])  # 输出:HloWrd

字符串的查找和替换

`find()`方法:查找子字符串在字符串中的位置,返回第一个匹配的索引,如果未找到则返回`-1`。

  str = "HelloWorld"
  print(str.find("World"))  # 输出:5
  print(str.find("Python"))  # 输出:-1


`index()`方法:与`find()`类似,但如果没有找到子字符串,会抛出`ValueError`异常。

  str = "HelloWorld"
  print(str.index("World"))  # 输出:5
  # print(str.index("Python"))  # 会抛出 ValueError


`replace()`方法:将字符串中的某些子字符串替换为另一个字符串。例如:

  str = "HelloWorld"
  result = str.replace("World", "Python")
  print(result)  # 输出:HelloPython

字符串的大小写转换

`upper()`方法:将字符串中的所有字符转换为大写。


  str = "HelloWorld"
  print(str.upper())  # 输出:HELLOWORLD


 `lower()`方法:将字符串中的所有字符转换为小写。
 

str = "HelloWorld"
  print(str.lower())  # 输出:helloworld

 `capitalize()`方法:将字符串的第一个字符转换为大写,其余字符转换为小写。
 

 str = "helloWorld"
  print(str.capitalize())  # 输出:Helloworld

`title()`方法:将字符串中每个单词的首字母转换为大写。

  str = "hello world"
  print(str.title())  # 输出:Hello World


字符串的格式化

使用`%`格式化:通过`%`符号将变量插入到字符串中。
 

  name = "Kuke"
  age = 25
  print("My name is %s and I am %d years old." % (name, age))
  # 输出:My name is Kimi and I am 25 years old.


 使用`str.format()`方法:通过`{}`占位符和`format()`方法将变量插入到字符串中。

  name = "kuke"
  age = 25
  print("My name is {} and I am {} years old.".format(name, age))
  # 输出:My name is Kimi and I am 25 years old.

使用 f-string(Python 3.6+):通过在字符串前加`f`,并在字符串中使用`{}`包裹变量,实现字符串格式化。

  name = "Kuke"
  age = 25
  print(f"My name is {name} and I am {age} years old.")
  # 输出:My name is Kimi and I am 25 years old.


 

字符串的分割

 `split()`方法:根据指定的分隔符将字符串分割成一个列表,默认分隔符是空格。

  str = "Hello World Python"
  list1 = str.split()
  print(list1)  # 输出:['Hello', 'World', 'Python']
  list2 = str.split(" ")
  print(list2)  # 输出:['Hello', 'World', 'Python']
  list3 = str.split("World")
  print(list3)  # 输出:['Hello ', ' Python']

字符串的判断

`isalpha()`方法:判断字符串是否只包含字母。

  str1 = "Hello"
  str2 = "Hello123"
  print(str1.isalpha())  # 输出:True
  print(str2.isalpha())  # 输出:False


`isdigit()`方法:判断字符串是否只包含数字。

  str1 = "123"
  str2 = "123a"
  print(str1.isdigit())  # 输出:True
  print(str2.isdigit())  # 输出:False

`isspace()`方法:判断字符串是否只包含空格。

str1 = "   "
  str2 = "  a  "
  print(str1.isspace())  # 输出:True
  print(str2.isspace())  # 输出:False


 `startswith()`方法:判断字符串是否以指定的子字符串开头。

  str = "HelloWorld"
  print(str.startswith("Hello"))  # 输出:True
  print(str.startswith("World"))  # 输出:False
  

`endswith()`方法:判断字符串是否以指定的子字符串结尾。例如:
 

 str = "HelloWorld"
  print(str.endswith("World"))  # 输出:True
  print(str.endswith("Hello"))  # 输出:False

字符串的去空格


 `strip()`方法:去除字符串首尾的空格。


  str = "   Hello World   "
  print(str.strip())  # 输出:Hello World

`lstrip()`方法:去除字符串左侧的空格。

 str = "   Hello World"
  print(str.lstrip())  # 输出:Hello World

`rstrip()`方法:去除字符串右侧的空格。
 

str = "Hello World   "
  print(str.rstrip())  # 输出:Hello World
  

 这一期我们先到这里,下一期我们讲列表与元组。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值