python字符串

本文详细介绍了Python字符串的特性,包括其不可变性、常用的方法如格式化、查找、替换和排版等。同时,提到了ASCII编码以及原始字符串的表示。此外,还展示了如何删除字符串的空格、进行大小写转换以及查找子串的实例。字符串在Python中扮演着重要角色,是编程中不可或缺的部分。
摘要由CSDN通过智能技术生成
  • 在Python中,字符串属于不可变有序序列,使用单引号、双引号、三单引号或三双引号作为定界符,并且不同的定界符之间可以互相嵌套。
  • 除了支持序列通用方法(包括双向索引、比较大小、计算长度、元素访问、切片、成员测试等操作)以外,字符串类型还支持一些特有的操作方法,例如字符串格式化、查找、替换、排版等等。
  • 字符串属于不可变序列,不能直接对字符串对象进行元素增加、修改与删除等操作,切片操作也只能访问其中的元素而无法使用切片来修改字符串中的字符。
  • 最早的字符串编码是美国标准信息交换码ASCII,仅对10个数字、26个大写英文字母、26个小写英文字母及一些其他符号进行了编码。ASCII码采用1个字节来对字符进行编码,最多只能表示256个符号。

原始字符串
在一个字符串字面量前加一个字符r,表示这个字符串是原始字符串,其中的\不被当作是转义字符前缀。

>>> s=r'hello\nworld'
>>> print(s)
hello\nworld

字符串常用方法或函数

字符串常用方法或函数解释
S.title()字符串S首字母大写
S.lower()字符串S变小写
S.upper()字符串S变大写
S.strip(),S.rstrip(),lstrip()删除前后空格,删除右空格,删除左空格
S.find(sub[,start[,end]])在字符串S中查找sub子串首次出现的位置
S.replace(old,new)在字符串S中用new子串替换old子串
S.join(X)将序列X合并成字符串
S.split(sep=None)将字符串S拆分成列表
S.count(sub[,start[,end]])计算sub子串在字符串S中出现的次数

查找子串 find()
在字符串中查找子串,返回第一次出现的位置下标(从0开始),如果找不到返回-1。

>>> s='He is a student'
>>> print(s.find('is'))
3
>>> print(s.find('am'))
-1
>>> s='This is a test'
>>> print(s.find('is',3))   #指定查找开始位置
5
>>> print(s.find('is',3,6))  #指定查找开始位置及终止位置
-1

统计子串出现的次数count()

>>> s='This is a test.'
>>> print(s.count('is'))
2

删除两端的空格

  • 函数rstrip() 去掉字符串右边的空格
  • 函数lstrip() 去掉字符串左边的空格
  • 函数strip() 去掉字符串左右两边的空格
>>> s=' hello  '
>>> s.rstrip()
' hello'
>>> s.lstrip()
'hello  '
>>> s.strip()
'hello'

大小写转换

>>> s="Hello World"
>>> s1=s.lower()
>>> s1
'hello world'
>>> s2=s.upper()
>>> s2
'HELLO WORLD'
>>> s
'Hello World'

注意:使用字符串的函数时并不会更改原来的字符串,字符串是不可更改的

查找字串

>>> s="This is a test"
>>> s.find("is")
2
>>> s.find("he")
-1

find函数返回字串第一次出现的位置,下标从0开始,如果找不到,返回-1

字符串常量

>>> import string
>>> string.digits   #数字字符常量
'0123456789'
>>> string.punctuation  #标点符号常量
'!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
>>> string.ascii_letters   #大小写字母常量
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
>>> string.ascii_lowercase  #小写字母常量
'abcdefghijklmnopqrstuvwxyz'
>>> string.ascii_uppercase  #大写字母常量
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值