字符串类型的表示
字符串定义:由0或个或多个字符组成的有序字符序列。
-字符串由一对单引号或一对双引号表示
:“这是一个字符串"或者"ABC”
-字符串是字符的有序序列,可以对其中的字符进行索引
:“这” 是 “这是一个字符串” 这个字符串的第0个字符。
字符串共有2类4种表示方法
-由一对单引号或一对双引号表示,仅表示单行字符串
:‘这是一个单行字符串’ 或者 ‘这是一个单行字符串’
-由三个单引号或三对双引号表示,表示多行字符串
-’’‘这是一个
多行字符串’’’
-备注:三引号同时也可用于注释,Python设置2类方法表示,在有些情况下,当所输入的字符串中有单引号时,可以使用双引号进行字符串的表示,当字符串中含有双引号,可以使用单引号表示字符串,这样就可以不必在字符串中使用转义符了。
字符串的序号
-1、正向递增序号
例如:“这是一个字符串”
从左到右各个字符的序号分别为:0123456。
-2、反向递减序号
例如:“这是一个字符串”
从右到左各个字符串的序号分别为:-1,-2,-3,-4,-5,-6,-7。
字符串的使用
使用[]获取字符串中的字符
-索引:返回字符串中的单个字符,<字符串>[字符序号]
-切片:返回字符串中的一段字符,<字符串>[开头字符序号:步长:结束字符序号]
字符串中的特殊字符
-1、转义符
-转义符表达特定字符的本意:
“这个字符串中有一个双引号(”)" 输出这个字符串,结果为:这个字符串中有一个字符串".
-转义符形成一些组合,表达一些不可打印的含义:
例如:"\b"表示 回退。 "\n"表示 换行(光标移动到下一行首)。 ‘’\r"表示 回车(光标移动到本行首)。
字符串操作
操作符及其使用 | 描述 |
---|---|
x+y | 连接两个字符串x和y |
n * x或n * y | 表示将字符串复制n次 |
x in s | 如果字符串x是字符串s的子串,则返回True否则返回False |
例子:通过输入数字1-7得到对应的星期(1-7)
n = "一二三四五六日"
a = eval(input("请输入数字1-7:"))
c = a-1
print("这是星期"+n[c])
字符串处理函数
函数及使用 | 描述 |
---|---|
len(x) | 长度,返回字符串x的长度 |
str(x) | 得到x的字符串形式 |
hex(x)或oct(x) | 整数x的16进制形式或x的8进制的形式 |
chr(u) | x为Unicode编码,返回其对应的字符 |
ord(x) | x为字符,返回其对应的Unicode编码 |
Python字符中,每个字符编码都是Unicode编码字符。
字符串处理方法
-方法特指< a >.< b >()中的函数 < b >()。
-方法本身也是函数,但与< a >的使用有关,< a >.< b >格式使用。
-字符串或者字符串变量是< a >,存在一些可使用方法。
-列举一些以方法形式提供的字符串处理功能:
方法及使用 | 描述 |
---|---|
str.lower()或str.upper() | 返回将字符串全部小写或大写的值,例如Abc.lower()结果为"abc" |
str.split(sep=None) | 返回字符串由分隔符分割后的列表,例如:ABC.split(,)得到结果为[‘A’,‘B’,‘C’] |
str.count(sub) | 统计字符串"sub"在整个字符串中出现的次数,例如:abcabc.count(a)结果为2 |
str.replace(old,new) | 将字符串中的old用字符串new替换,例如:Python.replace(y,Y)结果为PYthon |
str.center(width,[fillchar]) | 字符串根据宽度width居中,fillchar可选,例如:Python.center(12,"!")结果为"!!!Python!!!" |
str.strip(chars) | 只能去掉字符串左边和右边(字符串头和字符串尾)chars中列出的字符串,例如"!delete!".strip("!de")结果为" let" |
str.join(iter) | 在iter字符串除了最后一个字符外的其余字符后面加上输入的str ,例如"!".join(“abcd”) 结果为"a!b!c!d" |
字符串类型的格式化
-字符串格式化使用.format()方法,用法如下:
str.format(< 逗号分隔的参数 >)
槽:"{}:今年{}岁:{}年".format(“小明”,“20”,“2020”)
从左到右第一个{}、第二个{}、第三个{}在字符串中默认的槽顺序为0、1、2,.format() 函数中的"小明"、“20”,“2020"参数顺序分别为0、1、2。运行可得到结果:“小明:今年20岁:2020年”
-format()方法的格式控制:
槽内部对格式化的配置方式:
{< 参数序号 >:< 格式控制标记 >}
: < 填充 >< 对齐 >< 宽度 >< , >< .精度 >< 类型 >
:为引导符号
< 填充 >:用于填充的单个字符。
< 对齐 >:< 左对齐,>右对齐,^中对齐
< 宽度 >:槽设定的宽度。
< , >:数字的千分位分隔符。
< .精度 >:浮点数小数精度或者字符串的最大长度。
< 类型 >:整数类型b,c,d,o,x,X。浮点数类型e,E,f,%。
例如:c=”{0:,.2f}".format(31415.8321)的结果为 ‘31,415.83’
d = “{0:!<15}”.format(“abcd”)的结果为 ‘abcd!!!’