简介
介绍Pthon中的基本数据结构及其数据存储与使用。
本部分包括以下内容:
- 列表
- 元组
- 字符串
- 字典
- 集合
- 序列
1.字符串
字符串是 Python中定义在单引号或双引号中的字符集合
** 例1:**
ts="Python campus!"
print(ts, type(ts)) #Python campus! <class 'str'>
tss='Python campus!'
print(tss, type(tss)) #Python campus! <class 'str'>
print(3+9) #12 数值加
print('3'+'9') #字符连接
- Python中常用的字符处理的转义字符
转义字符 | 描述 |
---|---|
\ | 反斜杠符号 |
’ | 单引号 |
" | 双引号 |
\n | 换行 |
\t | 横向制表符(TAB) |
\r | 回车 |
例2 用转义字符输出 单引号,双引号,反斜杠
print('Let\'s go') #Let's go
print("c:\\") #c:\
print("C:\\Program Files\\Python\\") #C:\Program Files\Python\
例3 字符串按原样不进行转义,只在原串前加英文字母r即可
print(r'C:\Program Files\Intel\Wifi\Help') #C:\Program Files\Intel\Wifi\Help
例4 多行字符用双引号括起来
para_str = """这是一个多行字符串的实例
多行字符串可以使用制表符
TAB ( \t )。
也可以使用换行符 [ \n ]。
"""
print(para_str)
这是一个多行字符串的实例
多行字符串可以使用制表符
TAB ( )。
也可以使用换行符 [
]。
2. 字符串切片与连接
与元组类似,一但存储不可修改内容
第一个指符指标从0开始
切片访问使用指标:[start :end ) 给出起始与结束指标值
索引值 可以为负。最后个元素指标为-1
例1: 字符串按原样不进行转义,只在原串前加英文字母r即可
str1='the Spring Python Campus'
print(str1[:10]) # 从开始到指标为9对应的字符
print(str1[:4]+"Autum"+str1[9:])
the Spring
the Autumg Python Campus
例2: 指标值为负值对字符串进行切片操作
str1='the Spring Python Campus'
print(str1[:-13]) # 从右向左指标为-13起,向左所有的字符the Spring
print(str1[-13:]) # 从右向左指标为-13起,向右所有的字符Python Campus
3. 字符串的常用内置方法
- capitalize():转换字符串首字母为大写
- lower():字符串所有大写字符转换为小写字符
- upper():字符串所有小写字符转换为大写字符
- swapcase():将字符串中大写转换为小写,小写转换为大写。
- count(str,beg=0,end=len(string)) 返回str在string中出现的次数,也可以设置从在某一范围内出现的次数。
**例1 ** 字符串按原样不进行转义,只在原串前加英文字母r即可
str1='python'
print(str1.capitalize()) #首字母大写 Pyhton
print(str1.lower()) #全部转成小写字母python
print(str1.upper()) #全部转换成大写字母PYTHON
print(str1.swapcase()) #大小写反转
str2 = "Python Python Python"
print(str2.count('P')) # P
- endswith(suffix, beg=0, end=len(string)) 检查字符串是否以指定子字符串 suffix 结束,如果是,返回 True,否则返回 False。如果 beg 和 end 指定值,则在指定范围内检查。
- startswith(substr, beg=0,end=len(string)) 检查字符串是否以指定子字符串 substr 开头,如果是,返回 True,否则返回 False。如果 beg 和 end 指定值,则在指定范围内检查。
- find(str, beg=0, end=len(string)) 检测 str 是否包含在字符串中,如果指定范围 beg 和 end,则检查是否包含在指定范围内,如果包含,返回开始的索引值,否则返回 -1
- rfind(str, beg=0,end=len(string)) 类似于 find() 函数,不过是从右边开始查找。
- isnumeric() :检测字符串是否只包含数字字符,是返回True,否则False.
4. 字符串格式化
-format 格式化函数,用于输出时参数格式的设置。
#为输出量设置位置
print("{0} love {1}".format('I','Kitty')) #I love Kitty
a='I'
b='Kitty'
print("{0} love {1}".format(a,b))#为输出量设置位置 #I love Kitty
#关键字参数设置
print("{a} love {b}".format(a='I',b='Kitty')) #I love Kitty
#设置小数点的输出位数
print('{0:.3f}'.format(456.33689)) #456.337
输出
I love Kitty
I love Kitty
I love Kitty
456.337
- python 中字符串格式化符号
符 号 描述
%c 格式化字符及其ASCII码
%s 格式化字符串,用str()方法处理对象
%r 格式化字符串,用rper()方法处理对象
%d 格式化整数
%o 格式化无符号八进制数
%x 格式化无符号十六进制数
%X 格式化无符号十六进制数(大写)
%f 格式化浮点数字,可指定小数点后的精度
%e 用科学计数法格式化浮点数
%E 作用同%e,用科学计数法格式化浮点数
%g 根据值的大小决定使用%f或%e
%G 作用同%g,根据值的大小决定使用%f或%E
符号 | 描述 |
---|---|
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串,用str()方法处理对象 |
%r | 格式化字符串,用rper()方法处理对象 |
%d | 格式化整数 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化浮点数字,可指定小数点后的精度 |
%e | 用科学计数法格式化浮点数 |
%E | 作用同%e,用科学计数法格式化浮点数 |
%g | 根据值的大小决定使用%f或%e |
%G | 作用同%g,根据值的大小决定使用%f或%E |
- 格式化输出时宽度,左右对齐的设置
符号 | 功能 | 使用格式 |
---|---|---|
m.n | m设置输出数据 的总宽度,n设置小数的位数 | print(’%5.1f’ %27.9896) # 27.99 |
print(’%.2e’ %27.9896) # 2.80e+01 | ||
+m | m前是正号,则右对齐 | print(’%25.1f’ %27.9896) # 27.99 |
-m | m前是负号,则左对齐 | print(’%-5.1f’ %27.9896) # 27.99 |
# | 输出八进制数前设置八进制符号(‘0’) | print(’%#o’ % 10) # 0o12 |
0 | 显示的数字前面填充’0’而不是默认的空格 | print(’%010d’ % 5) # 0000000005 |
更的字符串内置方法,查阅Ptyhon 参考文档