栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python 中的数据类型(1):字符串

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python 中的数据类型(1):字符串

        在Python程序中,字符串类型是最常见的数据类型,可以使用引号(单引号或双引号)来创建字符串。创建Python字符串非常简单,只要为变量分配一个值即可。如下:

var1 = 'Hello World'        #字符串类型变量
var2 = "Python R"            #字符串类型变量

        在Python程序中,字符串通常由单引号“ ' ”、双引号“ " ”、三个单引号或三个双引号包围的一串字符串组成。

        1.单引号字符串与双引号字符串本质上是相同的。但当字符串内含有单引号时,然后还用单引号字符串,就会导致无法区分字符串内的单引号与字符串标志的单引号,因此要使用转义字符串。如果使用双引号字符串,在字符串中直接数学单引号即可。例如:

'abc"dd"ef'
"'abc'd'12"

        2.三引号字符串可以由多行组成,单引号或双引号字符串则不行,当需要使用大段多行的字符串时,就可以使用他。例如:

'''
这就是字符串
'''

        字符串中的字符也可以包含数字、字母、中文字符、特殊符号,以及一些不可见的控制字符,如换行符、制表符等。

1.1访问字符串的值

        字符串是可以通过序号(序号从0开始)来取出其中的某个字符串,例如:

var1 = 'Hello World'
var2 = "Python Toppr"
print("var1[0]", var1[0])      #截取第一个字符串中的第一个字符        输出:var1[0] H
print("var[2]", var2[1:5])  #截取第二个字符串中的第2~5个字符        输出:var[2] ytho

        另外,还可以使用字符串的str[beg:]、str[:end]、str[beg:end]、以及str[:-index]方法实现截取操作,例如:

str = '0123456789'
print(str[0:3])         #截取第一位到第三位的字符                  输出:012
print(str[:])           #截取字符串中所有的字符                    输出:0123456789
print(str[6:])          #截取第六个字符后面的所有字符               输出:6789
print(str[:-3])         #截取从开头到倒数第三个字符之前的字符        输出:0123456
print(str[2])           #截取第三个字符                            输出:2
print(str[-1])          #截取倒数第一个字符                        输出:9
print(str[::-1])        #创造一个与原字符串顺序相反的字符串          输出:9876543210
print(str[-3:-1])       #截取倒数第三位与倒数第一位之前的字符        输出:78
print(str[-3:])         #截取倒数第三位到结尾                        输出:789
1.2字符   1.2.1转义字符 
Python中常用的转义字符
转义字符描述
(在尾行)续行符
\反斜杠符号
'单引号
''双引号
a响铃
b退格
e转义
00
n换行符
v纵向制表符
t横向制表符
r回车符
f换页符
oyy八进制,yy代表的字符,例如“o12”  代表换行符
xyy十六进制,yy代表的字符,例如  “x0a”代表换行符
other其他的字符以普通的格式输出

1.2.2格式化字符
Python中的常用字符串格式化符号
符号描述
%c格式化字符及其ASCII码
%s格式化字符串
%d格式化整数
%u格式化无符号整数
%o格式化无符号八进制数
%x格式化无符号十六进制数
%X格式化无符号十六进制(大写)
%f格式化浮点数,可指定小数点后的精度
%e用科学计数法格式化浮点数
%E作用同%e ,用科学计数法格式化浮点数
%g%f和%e的简写
%G%f和%E的简写
%p用十六进制数格式化变量的地址

1.3字符串处理函数
Python中常用的字符串处理的函数
字符串处理函数描述
String.capitaliza()将字符串的第一个字母大写
String.count()获得字符串中某一子字符串的数目
String.casefold()返回适合无大小写比较的版本(和String.lower用法相同)
String.center()居中对齐
String.ljust()左对齐
String.rjust()右对齐
String.endswith()检测是否是以某个字符串结尾的(bool类型)
String.find()获得某一字符串中某一子字符串的起始位置,无则返回-1
String.isalnum()检测字符串是否仅包含数字或者英文字母
String.isalpha()检测字符串是否仅包含a~z和A~Z
String.isdigit()检测字符串是否仅包含0~9
String.islower()检测字符串是否均为小写字母
String.isspace()检测字符串中所有字符是否都为空白字符
String.istitle()检测字符串中的单词首字母是否大写
String.isupper()检测字符串是否均为大写字母
String.jion()连接字符串
String.lower()将字符串全部转换成小写
Sting.split()分割字符串
String.swapcase()将字符串中的大写字母转换为小写,小写字母转换为大写
String.title()将字符串中的单词首字母大写
String.upper()将字符串中的全部字母转换为大写
len(String)获取字符串的长度

1.fromat方法

#format方法
# "".format(参数)
# "{}".format(参数)
print(f"data is {data:*^4}, data2 is {data2}, data3 is {data3}")
# {}对应关系,根据你后边传参的顺序
print("data is {}, data2 is {}, data3 is {}".format(data, data2, data3))
# 也可以指定顺序: {0}, {1}, {2}
# 前提是把format传入的参数当做一个元组(data, data2, data3)
print("data is {2}, data2 is {1}, data3 is {0}".format(data, data2, data3))
# 定义一个列表
list_data = [1, 2, 3]
# [1, 2, 3]相当于元组的一个元素,用下标去取元组中列表的元素
print("data is {0[0]}, data2 is {0[1]}, data3 is {0[2]}".format([1, 2, 3]))     
#将列表[1, 2, 3]用字典的方式写出->list_data = [1, 2, 3],list_data相当于字典中的key,在运用字典中的知识将元素取出
print("data is {list_data[0]}, data2 is {list_data[1]}, data3 is {list_data[2]}".format(list_data=[1, 2, 3]))   

2.expandtabas方法

          返回字符串的副本,其中所有的制表符会由一个或多个空格替换,具体取决于当前列位置和给定的制表符宽度。 每 tabsize 个字符设为一个制表位(默认值 8 时设定的制表位在列 0, 8, 16 依次类推)。 要展开字符串,当前列将被设为零并逐一检查字符串中的每个字符。 如果字符为制表符 (t),则会在结果中插入一个或多个空格符,直到当前列等于下一个制表位。 (制表符本身不会被复制。) 如果字符为换行符 (n) 或回车符 (r),它会被复制并将当前列重设为零。 任何其他字符会被不加修改地复制并将当前列加一,不论该字符在被打印时会如何显示。

str_data = "hellotworldthello"
print(str_data)
print(str_data.expandtabs(tabsize=2), len(str_data.expandtabs(tabsize=2)))    #输出:hello	world	hello
print(str_data.expandtabs(tabsize=3), len(str_data.expandtabs(tabsize=3)))    输出:hello world hello 17
print(str_data.expandtabs(tabsize=4), len(str_data.expandtabs(tabsize=4)))    输出:hello   world   hello 21
print(str_data.expandtabs(tabsize=5), len(str_data.expandtabs(tabsize=5)))    输出:hello     world     hello 25
print(str_data.expandtabs(tabsize=9), len(str_data.expandtabs(tabsize=9)))    输出:hello    world    hello 23

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/293709.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号