2.3、Python基础知识--字符串运用(以及内置函数)

2.3、字符串

2.3、前言

字符串虽然看似简单,但能够以很多不同的方式使用它们。字符串就是一系列字符。在Python中,用引号括起的都是字符串,其中的引号可以是单引号,也可以是双引号,如下所示:

'This is a string.'
"This is also a string."

在字符串中要注意引号(’)撇号(’)

2.3.1、使用方法修改字符串的大小写

title() 方法 :每个单词首字母大写

name = 'ada lovePython'
print(name.title())

效果为:Ada Lovepython

upper() 方法:将所有字母转为大写字母

name = 'ada lovePython'
print(name.upper())

效果为:ADA LOVEPYTHON

lower() 方法:将所有字母转为小写字母

name = 'ada lovePython'
print(name.lower())

效果为:ada lovepython

存储数据时,方法lower()很有用。很多时候,你无法依靠用户来提供正确的大小写,因此需要将字符串先转换为小写,再存储它们。以后需要显示这些信息时,再将其转换为最合适的大小写方式。

2.3.2、合并(拼接)字符串

在很多情况下,都需要合并字符串。例如,你可能想将姓和名存储在不同的变量中,等要显示姓名时再将它们合而为一:

代码如下:
	first_name = 'tony'
	last_name = 'lovelace'
	full_name = first_name+" "+last_name
	print(full_name)

输出效果如下:
	tony lovelace

2.3.3、使用制表符或换行符来添加空白

\t’ --> 代表 空白
\n’ --> 代表 换行

name = 'Languages:\nPython\t\n\tJava\nC\nHTML'
print(name)

效果如下:
Languages:
Python	
	Java
C
HTML

2.3.4、删除空白

rstrip() -> 表示去掉字符串中 末尾 多余的空格
lstrip() -> 表示去掉字符串中 开头 多余的空格
strip() -> 表示去掉字符串中 两端 多余的空格

在实际程序中,这些剥除函数最常用于在存储用户输入前对其进行清理。

2.3.5、字符串相关字符操作

1、字符串截取(检索)

类似于C,字符串的第一个字符索引0。Python没有单独的字符类型;一个字符就是一个简单的长度为1的字符串。如下所示:

第一种截取方法:索引为正数

word = 'Python'
print(word[0])

输出效果:P

word = 'Python'
print(word[2])

输出效果:t

第二种截取方法:索引为负数

word = 'Python'
print(word[-1])

输出效果:n

word = 'Python'
print(word[-6])

输出效果:P

小结:请注意-0实际上就是0,所以它不会导致从右边开始计算,所以索引为负数时,则是从-1开始计算。

2、字符串----切片

除了索引,还支持切片。索引用于获得单个字符,切片可以获得一个字符串。如下所示:

第一种切片方法:索引有两个

word = 'Python'
print(word[0:2])

输出效果:Py

word = 'Python'
print(word[2:5])

输出效果:tho

如果索引使用太大,则导致报错。如下所示:

word = 'Python'
print(word[45])

错误提示:
Traceback (most recent call last):
  File "E:/pythonProject/Demo/demo.py", line 2, 
  in <module>
    print(word[45])
IndexError: string index out of range

第二种切片方法:索引有一个

切片的索引有非常有用的默认值;省略的第一个索引默认为零,省略的第二个索引默认为切片的字符串的大小。

word = 'Python'
print(word[-2:])

输出效果:on

word = 'Python'
print(word[:2])

输出效果:Py

word = 'Python'
print(word[4:])

输出效果:on

word = 'Python'
print(word[:2]+word[2:])

输出效果:Python

注意,切片的特点是前包后不包,就是不包含末尾的字符,这使得s[:i] + s[i:]永远等于s

 +---+---+---+---+---+---+
 | P | y | t | h | o | n |
 +---+---+---+---+---+---+
   0   1   2   3   4   5   
  -6  -5  -4  -3  -2  -1
  1. 文本中的第一行数字给出字符串中的索引点 0…5。第二行给出相应的负索引。切片是从 i 到 j 两个数值标示的边界之间的所有字符。
  2. 对于非负索引,如果上下都在边界内,切片长度就是两个索引之差。例如,word[1:3] 是 2
  3. python可以自动处理没有意义的切片索引:一个过大的索引值(即下标值大于字符串实际长度)将被字符串实际长度所代替,当上边界比下边界大时(即切片左值大于右值)就返回空字符串 如下所示:
#第一类
word = 'Python'
print(word[4:45])

输出效果:on

#第二类,输出空串
word = 'Python'
print(word[46:])

输出效果:

注意!注意!注意!:Python字符串时不可被更改的,也就是说它们是不可变的,因此,赋值给字符串索引的位置会导致错误。如下所示:

word = 'Python'
wod = word[0]='J'
print(wod)

错误提示:
Traceback (most recent call last):
  File "E:/pythonProject/Demo/demo.py", line 2, in <module>
    wod = word[0]='J'
TypeError: 'str' object does not support item assignment
#翻译:str对象不支持赋值

如果需要组成一个不同的字符串,我们可以创建有个新的。
如下所示:

word = 'Python'
wod = 'J'+word[1:]
print(wod)

输出效果:Jython

word = 'Python'
wod = word[2:] + 'J' + word[2:3]
print(wod)

输出效果:thonJt

2.3.6、字符串内置函数

len():表示返回字符串的长度。如下所示:

word = 'Python\nPython\nC\nJava\nJavaScript'
print(len(word))

输出效果:31
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值