Python 中的数据类型

      字符串

         在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转义
\000
\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 = "hello\tworld\thello"
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

数据的类型转换:

 自动类型转换:

        布尔类型和数值型,可以自动类型转换

        在计算机中,布尔类型:True -> 1 False -> 0;

强制类型转换:

        python字符串是无法和布尔类型,以及数值型进行自动类型转换的

        str()                                #将数值型或布尔转换成字符串

        int()                                #将字符串转换成整型

        float()                               #将字符串转换为浮点数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值