python不支持单字符类型_Python数据类型之字符串

1. Python字符串的创建

字符串是Python中最常见的数据类型,通常使用单引号或双引号来定义一个字符串,如下:

str = "我是字符串"

str1 = '我也是字符串'

python中单引号和双引号定义字符串作用效果是相同的,它没有char类型,也就是python不支持单字符类型,单字符在python中也是作为字符串处理的。

2. Python字符串的截取

语法:变量[头下标:尾下标]

字符串的索引值以0为开始值,-1为末尾的开始位置

比如:获取字符串的一段子字符串

str = 'Hello World!'

print (str)          # 输出字符串

print (str[0:-1])    # 输出第一个到倒数第二个的所有字符

print (str[0])       # 输出字符串第一个字符

print (str[2:5])     # 输出从第三个开始到第五个的字符

print (str[2:])      # 输出从第三个开始的后的所有字符

3. Python字符串的修改(替换)

Python字符串的修改(替换),其实就是截取字符串的一部分与其他字符串进行拼接,使用加号操作符来实现。

str = "Hello World"

newStr = str[:6] + "tom!"

4. Python字符串的转义

在Python中使用反斜杠(\)来对字符串中的特殊符号进行转义,常见的转义字符如下:

(1) \(在行尾时)续行符

(2) \\反斜杠符号

(3) \'单引号

(4) \"双引号

(5) \a响铃

(6)\b退格(Backspace)

(7)\000空

(8)\n换行

(9)\v纵向制表符

(10)\t横向制表符

(11)\r回车

(12)\f换页

(13)\oyy八进制数,yy 代表的字符,例如:\o12 代表换行,其中 o 是字母,不是数字 0。

(14)\xyy十六进制数,yy代表的字符,例如:\x0a代表换行

(15)\other其它的字符以普通格式输出

5. Python字符串编码方式

在Python3中,所有的字符串都采用Unicode编码方式,也就是Python3中,所有的字符串都是Unicode字符串;

6. Python字符串运算符

(1)+实现字符串拼接操作。

(2)*重复输出字符串(字符串乘法)。

(3)[]通过字符串的索引获取字符串中对应的字符。

(4)[ : ]截取字符串中的一部分,遵循左闭右开原则,str[0,2] 是不包含第 3 个字符的。

(5)in成员运算符 - 如果字符串中包含给定的字符返回 True。

(6)not in成员运算符 - 如果字符串中不包含给定的字符返回 True。

(7)r/R使用r可以让反斜杠不发生转义,也就是原样输出原始字符串,所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母 r(可以大小写)以外,与普通字符串有着几乎完全相同的语法。

print( r'\n' )

print( R'\n' )

(8)%用来格式字符串。

7. Python格式化字符串

Python支持格式化字符串的输出,使用%来实现格式化操作。

Python常见的字符串格式化符号如下:

(1) %c 格式化字符及其ASCII码

(2) %s 格式化字符串

(3) %d 格式化整数

(4) %u 格式化无符号整型

(5) %o 格式化无符号八进制数

(6) %x 格式化无符号十六进制数

(7) %X 格式化无符号十六进制数(大写)

(8) %f 格式化浮点数字,可指定小数点后的精度, 如: %.5f

(9) %e 用科学计数法格式化浮点数

(10) %E 作用同%e,用科学计数法格式化浮点数

(11) %g %f和%e的简写

(12) %G %f 和 %E 的简写

(13) %p 用十六进制数格式化变量的地址

在使用上面提到的格式化符号来格式化字符串时,常常需要一些字符串辅助符号来实现。

在Python中,常见的格式化辅助符号如下:

(1) *定义宽度或者小数点精度

(2) -用做左对齐

(3) +在正数前面显示加号( + )

(4) 在正数前面显示空格

(5) #在八进制数前面显示零('0'),在十六进制前面显示'0x'或者'0X'(取决于用的是'x'还是'X')

(6) 0显示的数字前面填充'0'而不是默认的空格

(7) %'%%'输出一个单一的'%'

(8) (var)映射变量(字典参数)

(9) m.n.m 是显示的最小总宽度,n 是小数点后的位数(如果可用的话)

在Python3.6后,引入了一个新的格式化字符串的语法——(f-string)字面量格式化字符串。

f-string 格式话字符串以 f 开头,后面跟着字符串,字符串中的表达式用大括号 {} 包起来,它会将变量或表达式计算后的值替换进去

比如:  f"我叫{name}, 今年{age}岁, 来自{city}"

8. Python中的三引号 """ """

python三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符。

str = """这是一个多行字符串的实例

多行字符串可以使用制表符

TAB ( \t )。

也可以使用换行符 [ \n ]。

"""

如果没有将一个三引号包裹的字符串值赋值给一个变量,那么这段字符串就是一个Python注释语句。

示例代码:#!/usr/bin/python3

# -*- coding: utf-8 -*-

# author : liuhefei

# Time : 2019/11/9

# desc:  Python数据类型之字符串

"""

Python数据类型之字符串:

在Python中使用单引号或双引号来定义一个字符串

"""

if __name__ == "__main__":

# 定义字符串

str = "Hello World!"

str1 = 'I love you! Hello World!'

str2 = "I like apples, \n but I don't like bananas, \t  so I don't eat bananas "

# 打印输出字符串

print("1 - ", str)

# 字符串的截取(左闭右开原则)

print("1 - ", str[0:-1])  # 输出第一个到倒数第二个的所有字符

print("2 - ", str[0])   # 输出字符串的第一个字符

print("3 - ", str[-1])  # 输出字符串的倒数第一个字符

print("4 - ", str[2:5])  # 输出从第三个开始到第五个的字符

print("5 - ", str[3:])  # 输出从第四个开始的后的所有字符

print("6 - ", str[:-4])  # 输出从第一个字符到字符串的倒数第四个字符之间的字符

print("\n")

# 字符串的运算

print("7 - ", str + str1)  # 字符串的拼接操作

print("8 - ", str1*4)  #字符串的乘法(重复输出字符串)

print("9 - ", str[5])  # 获取字符串下标为5的字符

print("10 - ", str in str1)  # 判断字符串str是否在str1中,存在返回True,否则返回False

print("11 - ", str not in str1)  # 判断字符串str是否不在str1中,不存在返回True,存在返回False

print("12 - ", r'str2')   # 打印输出原始字符,不发生转义

print("13 - ", R'str2')

print("14 - ", str2)   # 打印字符串,转义发生

print("我叫%s, 今年%d岁, 来自%s, 体重%.2fKG" %("刘豆豆", 24, "深圳", 72.04))

print("我叫{name}, 今年{age}岁, 来自{city}, 体重{weight}".format(weight=70.04, age=25, name="刘豆豆", city='深圳'))

print("\n")

strs = """

天国虽美,\n

没有了你,\n

万杯觥筹,\n

只不过

是提醒寂寞罢了。

"""

print("strs = ", strs)

strs1 = '''

你若来,\n

我等你!\n

你若走,\n

我送你!\n

喜欢你,或许就只是我一个人的事!

'''

print("strs1 = ", strs1)

# f-string 字面量格式化字符串

s = f'我想你了, {strs}'

print("s = ", s)

boy = {"男": "男:我想你了\n"}

girl = {"女": "女:只愿君心似我心,定不负相思意"}

speak = f"{boy['男']}{girl['女']}"

print(speak)

来源:gzh:   学虽易学好难(study3344)

结束语:一个人,一个目标,一条路!

你可能感兴趣的:(python不支持单字符类型)