字符串
在python
中也存在字符串,但是定义字符串的方式和C语言有所不同。在python中用引号引起的内容都是字符串(无论是''
还是""
)。
字符串的创建
"hello" #是字符串
'hello' #也是字符串
并且下列写法也是正确的:
"hello, 'world" #正确的
'hello, "world' #也是正确的
"""im""" #也是字符串
但是注意几种不正确的写法:
- 如果在字符串内含有不成对的
'
或"
,则不能使用与之相同的引号来表明整个字符序列是字符串。
所以,如果字符串内的引号是成对的,那么就没有使用限制了。
'hello, ''world' #正确的
"hello, ""world" #也是正确的
-
如果内外两层引号相同,则不要在内层引号中添加内容,因为字符串是不能嵌套的。
-
如果想要打印双引号或单引号,则外层的引号必须与内层的引号相异。
name = "li hua"
print(f'{name.title()} said: "hello world!"')
在字符串中使用变量
在一些情况下,你可能想在字符串中使用变量的值。那么可以这样做:
surname = "ma"
name = "ningyuan"
print(f"{surname} {name}")
- 字符串的前缀
f
表明函数print()
的参数是格式字符串。 - 应该将要插入的变量(或者使用了某种方法的变量)放入
{}
内。 - 可以将格式字符串赋给变量。
f_name = f"{surname} {name}"
dir()
dir()
函数接受一个对象,会根据该对象的类型生成一个由该数据所有方法组成的列表。
print(dir("hello"))
改变字符串的大小写
.title()
如果想要将字符串的首字符转换为大写该如何做?下面是一个可行的示例:
surname = "ma"
print(surname.title())
在该实例中,title()
方法将字符串的首字符转换为大写。方法(method)是python中可以对数据执行的操作。在surname.title()
中,surname
后面的句点让python对name
变量执行title()
方法指定的操作。
- 此外,
title()
方法本质上是将字符串中的每个单词的首字符大写。
name = "a b c"
print(name.title())
.capitalize()
a = "hello, world"
print(a.capitalize())
- 注意区分
.title()
和.capitalize()
两种方法。前者会识别字符串中的单词,并将每个单词的首字符转换为大写;而后者只将字符串首字符大写。
.upper()
如果想要得到字符串的所有字符的大写形式,则可以使用.upper()
方法。
print(surname.upper())
.lower()
如果想要得到字符串的所有字符的小写形式,则可以使用.lower()
方法。
print(surname.lower())
改变字符串本身
如果不仅想要得到字符串的特定形式,还想要该字符串的实际内容也变为该形式(上面介绍的几个方法默认都不会改变字符串本身),则要这样做:
surname = surname.upper()
删除字符串中的空白
Python能够找出字符串左端或右端的空白,并且能删除这些空白。
同样的,下面介绍的方法默认也不会改变字符串本身。
.rstrip()
rstrip()
方法可以删除字符串右端的空白。
name = "ma "
print(f"{name.rstrip()}ningyuan")
.lstrip()
lstrip()
方法可以删除字符串右端的空白。
.strip()
strip()
方法可以删除字符串两端的空白。
删除字符串的部分前缀
如果想要删除字符串的前几个字符,则使用.removeprefix()
方法。
.removeprefix()
str = "httpstring"
print(str.removeprefix("http"))
print(str)
设置字符串的位置
.center()
该方法可以使得字符串居中显示,并可以用指定的字符填充。
a = "hello, world"
print(a.center(50, '#'))
.ljust()
print("hello".ljust(50, '#'))
.rjust()
print("hello".rjust(50,'#'))
判断与查找
.endswith()
print("hello".endswith('a'))
.startswith()
print("hello".startswith('hel'))
.find()
.find()
方法返回某元素首次出现的下标(如果没有找到则返回-1)
print("hello".find('l'))
.index()
- 如果不存在则直接报错
print("hello".index('ab'))
分割字符串
.split()
.split()
方法会根据指定的字符将字符串分割成若干部分(且该指定字符会从原来的字符串中删除)。
s = "hsdofjsoihsdofjsofhsffo"
print(s.split('h'))
字符替换
.replace()
s = "hello"
print(s.replace('h', 'a'))
数值
在python中,可以在终端输入python
命令进入一个环境,该环境不仅可以执行python代码,还可以计算简单数字的运算。
数值的基本运算
- 在环境中,可以进行数的四则运算,以及整数多项式(含括号)的运算。
- 此外,还可以计算数的乘方,使用
**
运算符。
乘方运算符不仅可以在该环境中运用,还可以直接运用到python
代码中
i = 2**3
print(i)
#或
print(2**3)
- 任意两数相除的结果一定是浮点数。
- 无论是哪种运算,只要表达式中含有浮点数,则最终的计算结果就一定是浮点数。
- 有时,关于浮点数的运算会出现误差,但这是正常的。