Python基础数据类型-String(字符串)

字符串是由数字、字母、符号组成的一串字符,用来表示文本。

目录

Python 转义字符

三引号

字符串运算符

格式化字符串


字符串支持索引(下标访问),第一个字符的索引是 0。

python的字串列表有2种取值顺序

从左到右索引默认0开始的,最大范围是字符串长度-1

从右到左索引默认-1开始的,最大范围是字符串开头

 +---+---+---+---+---+---+
 | P | y | t | h | o | n |
 +---+---+---+---+---+---+
 0   1   2   3   4   5   6
-6  -5  -4  -3  -2  -1
str = 'Python'
print(str[0]+str[1]+str[2]+str[3]+str[4]+str[5]) #通过下标获取对应字符,结果输出python
print(str[-6]+str[-5]+str[-4]+str[-3]+str[-2]+str[-1])#通过下标获取对应字符,结果输出python
print(str[1:3]) #[头下标:尾下标] 获取的子字符串;包含头下标的字符,但不包含尾下标的字符,结果输出yt
print(str[1:]) #输出从第一个字符开始的字符串
print(str * 3) #输出字符串三次
print ("人生苦短,我爱"+str) #输出人生苦短,我爱python
print(str[0:5:2]) #第三个参数作用是截取的步长,此实例在索引 0 到索引 5 的位置并设置为步长为 2(间隔一个位置)来截取字符串

Python 转义字符

在需要在字符中使用特殊字符时,python 用反斜杠 \ 转义字符。如下表

转义字符描述代码示例
\(在行尾时)续行符.写了续行符之后,续行符后面什么都不能 出现,必须换行(必须换行写内容)

print('python'\

'C#'\

'C++') 

\\反斜杠符号,需要在字符串中保留一个反斜杠的情况下使用

print('python\\')

\'单引号,需要在字符串中保留类似my name's lily这样的情况使用

print('my name\'s lily')

\"双引号

print("\"python\" is very famous")

\a响铃,在标准输出设备输出字符'\a'时,系统自带的扬声器(或蜂鸣器)会发出“叮”的一声

print("\a")

\b退格(Backspace),会删除所在位置在前一个字符,放在头尾不起作用

print("That is ab\b  dog")

\000

print("ni\000ce")#输出nice

\n换行

print("hello\npython")

\v纵向制表符

print("亲爱的\v爸爸妈妈")

\t横向制表符

print("亲爱的\t爸爸妈妈")

\r [unix系统]

\r\n [windows系统]

\n [Mac系统]

回车,在不同系统中有不一样的体现
\f换页

三引号

字符串字面值可以实现跨行连续输入。实现方式是用三引号:"""...""" 或'''...''',让程序员从引号和特殊字符串的泥潭里面解脱出来,自始至终保持一小块字符串的格式是所谓的WYSIWYG(所见即所得)格式的

print("""这里禁止停车""")
print ('''这里禁止开车''')

字符串运算符

操作符描述代码示例输出结果
+字符串拼接

print("a"+"b")

ab 
*重复输出

print("a"*2)

aa
[]通过索引获取字符串中字符

a = 'python'

print(a[1])

y

[a:b]

截取字符串中的一部分

a = 'python'

print(a[0:2])

py

in

查找字符串中包含给定的字符,找到返回True

print('h' in 'python')

True

not in

查找字符串中不包含给定的字符,未找到返回 True

print('a' not in 'python')

True
r/R按内容原始输出,不进行转义

print(R'hello \n python') 

hello \n python

格式化字符串

符号描述代码示例输出结果
%s格式化字符串

name = 'xiaoming'

gender = 'boy'

print('%s is a %s' %(name,gender) )

xiaoming is a boy
%c格式化整数

name = 'xiaoming'

gender = 12

print('%s age %d' %(name,gender) )

xiaoming age 12
%u 格式化无符号整型

name = 'xiaoming'

gender = 12

print('%s age %u' %(name,gender) )

xiaoming age 12
%o 格式化无符号八进制数

print('%o' %(0b11))

3
%x 格式化无符号十六进制数

print('%x' %(0xEFEFEF))

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

print('%X' %(0xEFefEf))

EFEFEF
%f 格式化浮点数字,可指定小数点后的精度

print('%.2f' %(12.33363556))

12.33
%e 用科学计数法格式化浮点数

print('%.2e' %(12.33545454545363556))

1.23e+01
%E 作用同%e,用科学计数法格式化浮点数

print('%.2E' %(12.33545454545363556))

1.23E+01
%g %f和%e的简写;在保证六位有效数字的前提下,使用小数方式,否则使用科学计数法

print('%g' %(12.33363556))

12
 %G %F 和 %E 的简写print('%.2G' %(12.33545454545363556))12

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值