Python 字符串的使用

字符串使用

1. 字符串的定义方式

双引号或者单引号括起来的数据,就是字符串。使用三引号括起来也是字符串,并支持换行。

例:

#  使用反斜线 对单引号进行转义
name1 = 'i\' Tom'
name2 = "Rose"
name3 = '''Tom '''
name4 = """ Rose """
a = ''' i am tom
		    nice to meet you! '''
b = """ i am Rose,
      nice to meet you too ! """

2. 字符串输出

  1. 格式化操作符 %

    name = '辉哥'
    print('姓名:%s' % name)
    
  2. f-strings

name = '辉哥'
address = '西安'
format_string1 = '我的名字是{name}, 我在{address}'
print(format_string1)
op_str = F" 3 + 5 = {3+5}"
a = 10
b = 20
op_str2 = f" a + b = {a+b}"
print(op_str)
print(op_str2)

3. 字符串输入

username = input('请输入用户名:')
print("用户名为:%s" % username)

4. 字符串常见操作

1. 下标和切片

​ 下标也就是字符串字符的索引,从0开始,通过索引可以获取当前索引的字符.
在这里插入图片描述

name = 'abcdef'
print(name[0])
print(name[2])
"""
输出如下:
a
c
"""

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

切片的语法:字符串[起始:结束:步长]

选取的区间从起始位置开始,到结束位置的前一位,不包含结束位置,步长表示选取的间隔。

起始参数默认为0,结束位置默认最后,步长默认为1 字符串[2:] 表示从下标2开始到最后全部

结束为负数(-2)表示从起始位置到倒数第几(2)个。

步长为负数表示结果反着取,从后向前取。

name = 'abcdef'
print(name:[0:3])
print(name:[3:])
print(name:[::-2]) #从后向前 每隔两个取一个
print(name[::-1]) #字符串反转输出
# 运行结果
abc
def
fdb
fedcba

2. find & rfind

语法: 字符串.find(子串,开始位置下标,结束位置下标)

示例:在开始和结束下标之间查找子串出现的其实下标位置

mystr = 'hello world i am hui zi'
index = mystr.find('hui', 0 10)
print(index)
# 输出 -1
index = mystr.find('hui')
print(index)
# 输出 17

rfind 和find 一样,只不过是从右边开始查找,结果和find一样

3. index & rindex

index 跟find方法一样,只不过在没有找到子串的情况下会抛出一个异常(ValueError)。

字符串序列.index(⼦串, 开始位置下标, 结束位置下标)

rindex 和 index 一样,只是从右边开始查找。结果一样。

4. count

语法: 字符串序列.count(⼦串, 开始位置下标, 结束位置下标)

mystr = 'hello world i am hui zi'
index = mystr.find('i')
print(index)
# 输出 3

5. replace

语法:字符串序列.replace(旧⼦串, 新⼦串, 替换次数N)

将字符串中的旧子串使用新子串进行替换N次.

mystr.replace(str1, str2, mystr.count(str1))

6. split

语法:字符串序列.split(分割字符, num)

将字符串使用分割字符进行分割num次。最多产生num+1个子串。num不指定则最大次数分割。

name="hello world ha ha"
result = name.split(" ", 2)
print(result)
#输出 ['hello', 'world', 'ha ha']

7. join

语法: 字符或⼦串.join(多字符串组成的序列)

例:

li = ["my","name","is","tom"]
str = " "
result = str.join(li)
print(result)
#输出 "my name is tom"

8. capitalize

把字符串的第一个字母大写

语法: mystr.capitalize()

mystr = "hello world"
str = str.capitalize()
print(str)
# Hello world

9. title

将字符串每个单词的首字母大写

a = 'hello world python'
b = a.title()
print(b)
# 输出 Hello World Python

10. lower & upper

将字符串全部转换为小写或者大写

语法: str.lower() str.upper()

11. lstrip & rstrip & strip

删除字符串左边出的空白字符,或者右边处的空白字符。或者删除两边的空白字符

str.lstrip() str.rstrip() str.strip()

12. ljust & rjust & center

返回一个原字符串 左对齐或者右对齐,或者居中对齐 按参数长度 不足的用空格补齐。

a = 'hello'
b = a.ljust(8)
c = a.rjust(8)
d = a.center(8)
print(b)
print(c)
print(d)
"hello   "
"   hello"
" hello  "

13. startswith & endswith

检查字符串是否以参数子串开始或者结束,是返回True 不是返回False

14. isalpha & isdigit & isalnum & isspace

检查字符串所有字符是否都是以字母(isalpha)或者数子(isdigit) 或者字母或数字(isalnum)或者全空格(isspace) 组成 ,是返回True,不是返回False。

15. partition & rpartition

将字符串以参数子串为分割串,切割成 子串前,子串,子串后。rpartition为从右边开始找第一次出现的子串。

16. splitlines

按照行分割,将一个包含换行的字符串按照行分割为一个列表返回。

a = "123\n456"
print(a.splitlines())
# 输出 ['123','456']

17. len

获取字符串长度
语法:len(str) 返回字符串的长度

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值