华子目录
一.字符串的四种表示
1.单引号
ch = 'hello world'
print(ch)
2.双引号
ch = "hello world"
print(ch)
3.单三引号(可以存储多行字符串)
ch = '''
hello world
Redhat
'''
print(ch)
4.双三引号(可以存储多行字符串)
ch = """
hello world
redhat
"""
print(ch)
二.对字符串进行切片取值
用法:变量名[start : stop : step]
,取头不取尾
start
表示起始值
,默认为0
stop
表示结束值
step
表示步长
,默认为1
,当step
为负数
时,意为反向取值
ch = '我喜欢吃QQGSAFSGH糖'
print(ch[0:3])
print(ch[:4])
print(ch[5:1:-1]) #反向取值,从下标为5一直取到下标为2,取头不取尾
print(ch[::]) #取所有
三.字符串常用内置函数
用法:变量名.函数名
find():
查找子字符串,如果存在则返回其对应下标,否则返回-1
用法:变量名.find(值)
ch = 'hello world'
print(ch.find('e')) #返回e对应的下标1
print(ch.find('la')) #因为没有la这个字段,所以会返回-1
index():
查找子字符串,如果存在则返回其对应下标,如果没有则会报错
用法:变量名.index(值)
ch = 'hello world'
print(ch.index('l')) #返回第一个l对应的下标值2
print(ch.index('z')) #因为没有z这个字符,所以会报错
print(ch.index("la")) #因为没有la这个字段,所以会报错
split()
按指定分隔符
切分字符串
,并将字符串
转为列表
用法:变量名.split(分隔符)
ch = 'wo ai zhang min'
print(ch.split(' ')) #按空格切分字符串,并转列表
ch1 = 'wo;ai;zhang;min'
print(ch1.split(';')) #按;切分字符串,并转列表
join()
用法:连接符.join(可迭代对象)
常用于将列表
拼接成字符串
li = ['wo','ai','zhang','min']
print(''.join(li)) #woaizhangmin
print('-'.join(li)) #wo-ai-zhang-min
replace()
用法:变量名.replace(old,new)
ch = '我爱吃QQ糖'
ch1 = ch.replace('QQ糖','肉')
print(ch1)
isdigit()
用法:变量名.isdigit()
判断字符串是否由数字
组成,返回一个bool
值
ch = '1234'
print(ch.isdigit()) #True
ch1 = '12 23' #中间有空格
print(ch.isdigit()) #False
isalpha()
用法:变量名.isalpha()
判断字符串是否由字母
组成,返回一个bool
值
isspace()
用法:变量名.isspace()
判断字符串是否由空格
组成,返回一个bool
值
strip()
用法:变量名.strip()
去除字符串两边的空格,\n,\t
得到一个新的字符串
ch = ' 124 \n'
print(ch.strip()) #124
count()
变量名.count()
判断子字符串在字符串中出现的个数
ch = '123455'
print(ch.count('5')) #返回5出现的个数,2
len()
用法:len(变量名)
求字符串的长度
ch = '123455'
print(len(ch)) #6
startswith()
用法:变量名.startswith(字符)
判断字符串
是否以某字符
开头,返回一个bool
值
ch = '123455'
print(ch.startswith('123')) #True
endswith()
用法:变量名.endswith(字符)
判断字符串
是否以某字符
结尾,返回一个bool
值
ch = '123455'
print(ch.endswith('55')) #False
upper()
用法:变量名.upper()
将字符串
中的小写字母
转大写
ch = '我喜欢吃qqgsafsgh糖'
print(ch.upper()) #我喜欢吃QQGSAFSGH糖
lower()
用法:变量名.lower()
将字符串
中的大写字母
转小写
ch = '我喜欢吃QQGSAFSGH糖'
print(ch.lower()) #我喜欢吃qqgsafsgh糖
字符串首字母大写
在Python中,如果你想要将一个字符串的首字母转换为大写,而其他部分保持不变,你可以使用title()
方法或capitalize()
方法。但这两个方法略有不同:
title()
方法:将每个单词的首字母转换为大写。capitalize()
方法:仅将字符串的第一个字符(即整个字符串的首字母)转换为大写。
如果你只想转换整个字符串的首字母,你应该使用capitalize()
方法。下面是一个例子:
s = "hello world"
s_capitalized = s.capitalize()
print(s_capitalized) # 输出: "Hello world"
在这个例子中,字符串"hello world"
的首字母被转换为大写,而其他字符保持不变。
如果你有一个由多个单词组成的字符串,并且你想要将每个单词的首字母都转换为大写,你可以使用title()
方法:
s = "hello world"
s_titled = s.title()
print(s_titled) # 输出: "Hello World"
在这个例子中,字符串"hello world"
中的每个单词的首字母都被转换为大写。
round()
Python
中的 round()
函数用于对浮点数
进行四舍五入
。该函数的基本语法如下:
round(number[, ndigits])
number
:必需,表示要四舍五入
的数字
。ndigits
:可选,表示小数点
后保留
的位数
。如果省略
,则默认为0
,即四舍五入
到最接近的整数
。如果提供了负值
,则表示四舍五入
到小数点左侧
相应的位数
。
示例
- 四舍五入到最接近的整数:
print(round(4.7)) # 输出: 5
print(round(4.5)) # 输出: 4(Python 3 的行为,在 Python 2 中,`round(4.5)` 会返回 5)
注意:虽然四舍五入 4.5 到整数在 Python 3 中通常是返回 4(采用“银行家舍入”规则,即当待舍入的数刚好在中间时,会选择使得结果的最低有效数字为偶数的那个),但不同的编程语言或环境中四舍五入行为可能有所不同。
- 保留一位小数:
print(round(4.765, 1)) # 输出: 4.8
- 四舍五入到小数点左侧:
print(round(123456, -2)) # 输出: 123500
这个例子中,-2
表示要四舍五入到万位。
注意事项
- 对于一些处于两个数字中间的浮点数,
round()
函数可能并不总是表现得如你预期那样,尤其是当没有明确的规则来确定应该舍入到哪一边时(例如,4.5 和 5.5 的情况)。在 Python 3 中,采用了“银行家舍入”规则(也称作四舍六入五成双)来尽可能减少四舍五入后的数字的平均误差。 - 在进行精确的财务计算时,通常不推荐使用浮点数和
round()
函数,因为浮点数可能不精确。对于这类场景,应该使用像decimal
模块这样的工具来处理精确的小数运算。