python数据类型包含以下几种
- int,整数类型(整形)
- bool,布尔类型
- str,字符串类型
- list,列表类型
- tuple,元组类型
- dict,字典类型
- set,集合类型
- float,浮点类型(浮点型)
1.整型--10进制数的统称
v1 = 5
bin(v1) # 把10进制数转为2进制数
oct(v1)把10进制数转为8进制数
hex(v1)把10进制数转为8进制数
# 获取二进制位数
v1.bit_length() # 获取v1的二进制位数
# 布尔值转整型
int(True) # 转化布尔数为整数1
# 小数转整型
v1 = int(8.7) # 8
# 字符串转整型
int('1') # 转化字符串1为整数1
int('1', base=10) # 同上,把字符串看为10进制的值,然后转为10进制整数
int('1', base=2) # 把字符串看为2进制的值,然后转为10进制整数
int('1', base=8) # 把字符串看为8进制的值,然后转为10进制整数
int('1', base=16) # 把字符串看为16进制的值,然后转为10进制整数
# 整型
python3
整型-无长度限制
python2
整型(有长度限制,范围为-9223372036854775808~9223372036854775807)
长整型(超过整型长度限制,都转为长整形,无限制)
# 地板除
# python3
v1 = 9/2
print(v1) # 4.5
# python2
v1 = 9/2
print(v1) # 4
# python2实现python3的除法效果
from __future__ import division
v1 = 9/2
print(v1) # 4.5
2.布尔型
True 真
False 假
整数0、空字符串、空列表、空元组、空字典转换为布尔值时均为False
其他均为True
3.字符串
3.1定义:字符串,我们平时会用他来表示文本信息。
v4 = '包"治百病'
v5 = """
流年,
易老。
"""
# 三个引号,可以支持多行/换行表示一个字符串,其他的都只能在一行中表示一个字符串。
3.2独有功能
"xxxxx".功能(...)
v1 = "xxxxx"
v1.功能(...)
3.2.1判断字符串是否以 XX 开头?得到一个布尔值
v1 = '天下无贼'
v1.startswith("天下")
3.2.2判断字符串是否以 XX 结尾?得到一个布尔值
v1.endswith("无贼")
3.2.3判断字符串是否为十进制数?得到一个布尔值
v1 = "1238871"
result = v1.isdecimal()
3.2.4判断字符串是否只有0和数字组成
v3 = '789'
v3.isdigit()
3.2.5去除字符串两边的 空格、换行符、制表符,得到一个新字符串
v1 = ' i have to to '
v1.strip() # 不写参数去俩端空格,写参数为去除指定内容
v1.lstrip() # 不写参数去左边空格,写参数为去除左边指定内容
v1.rstrip() # 不写参数去右边空格,写参数为去除右边指定内容
3.2.6字符串变大写,得到一个新字符串
v1.upper()
3.2.7字符串变小写,得到一个新字符串
v1.lower()
3.2.8字符串内容替换,得到一个新的字符串
v1.replace(a,b) # 把字符串中的a替换为b
3.2.9字符串切割
v1.split('|') # 用|把字符串切割为列表
通过指定分隔符对字符串进行切片,如果第二个参数 num 有指定值,则分隔 num+1 个子字符串-一般num=1用来分割得到文件后缀
3.2.10字符串拼接
list1.join(',') # 把列表的元素用逗号拼接为一个字符串
3.2.11格式化字符串,得到新的字符串
"{}你好啊{}".format('流年', '哈哈')
"{a}你好啊{b}".format(a = '流年', b = '哈哈')
3.2.12字符串转换为字节类型
data = '你好' # unicode类型,字符串类型
v1 = data.encode('utf-8') # 字节类型
v2 = data.encode('gbk') # 字节类型
字节转字符串类型
s1 = v1.decode('utf-8'); # '你好'
s2 = v2.decode('gbk'); # '你好'
3.2.13将字符串内容居中、居左、居右展示
v1 = "流年"
# data = v1.center(21, "-")
# print(data) #---------流年---------
# data = v1.ljust(21, "-")
# print(data) # 流年------------------
# data = v1.rjust(21, "-")
# print(data) # ------------------流年
3.2.13帮助你填充0
v1 = "abcd"
v1.zfill(8) # 0000abcd
3.3公共功能
3.3.1计算
加 v1 = '流年' + '似水' # 流年似水
乘 v1 = '流年' * 3 # 流年流年流年
3.3.2 长度
v1 = len('陆奶奶') # 3
3.3.2 索引取值
v1 = 'ni好哇,哈哈哈' # 从前开始0123...,倒数的索引是-1,-2,-3...
v2 = v1[0]
v3 = v1[-2]
# 注意:字符串中是能通过索引取值,无法修改值。【字符串在内部存储时不允许对内部元素修改,想修改只能重新创建。】
3.3.3 切片
message = "来做点py交易呀"
print(message[0:2]) # "来做"
print(message[3:7]) # "py交易"
print( message[3:] ) # "py交易呀"
print( message[:5] ) # "来做点py"
print(message[4:-1]) # "y交易"
print(message[4:-2]) # "y交"
print( message[4:len(message)] ) # "y交易呀"
# 切片,含头不含尾
# 字符串切片只能读取数据,无法修改数据【字符串在内部存储时不允许对内部元素修改,想要修改只能重新创建】
3.3.4 步长,跳着读取字符串的内容
# 切片的第一参数是开头位置(包含),第二参数位置(不包含),第三参数(步长)
name = "生活不是电影,生活比电影苦"
print( name[ 0:5:2 ] ) # 输出:生不电 【前两个值表示区间范围,最有一个值表示步长】
print( name[ :8:2 ] ) # 输出:生不电, 【区间范围的前面不写则表示起始范围为0开始】、
# 此处老师讲解时,错把 name[ 2::3 ]看成了name[ 2::2 ],更正下。(感谢 B站 放酱啊噗啊噗 同学的反馈)
# print( name[ 2::2 ] ) # 输出:不电,活电苦
# print( name[ 2::3 ] ) # 输出:不影活影
print( name[ 2::3 ] ) # 输出:不电,活电苦 【区间范围的后面不写则表示结束范围为最后】
print( name[ ::2 ] ) # 输出:生不电,活电苦 【区间范围不写表示整个字符串】
print( name[ 8:1:-1 ] ) # 输出:活生,影电是不 【倒序】
name = "生活不是电影,生活比电影苦"
print(name[8:1:-1]) # 输出:活生,影电是不 【倒序】
print(name[-1:1:-1]) # 输出:苦影电比活生,影电是不 【倒序】
# 面试题:给你一个字符串,请将这个字符串翻转。
value = name[-1::-1]
print(value) # 苦影电比活生,影电是不活生
3.3.5 循环
str = 'abcdefg'
for:
for char in str:
print(char)
for i in rang(str):
print(str[i])
3.3.6 转换str()
v1 = 789 # int
v2 = str(789) # '789'
标签:name,python,print,数据类型,v1,3.2,整型,字符串,进制 From: https://www.cnblogs.com/liunian9527/p/16694348.html