python学习笔记day03 数据类型

整体数据类型

int:用于计算 :

1,2,3,4,,,

bool: 用于用户判断:

True
False

str:(不可变数据类型) 用于存储少量数据:

'xuanxuanlovebaby'

list:(可变数据类型)用于存储大量数据:

[123,'xuanxuan',1.2,True]

 

dict:(可变数据类型)一般可以用于索引 根据键索引值:

d={'xuanxuan':22,'baby':1}

tuple:元组,不可变数据类型

t=(1,1.2,'xuan')

 

数据类型详解

int数据类型

bit_length()方法:计算int类型数据转化为二进制所用的位数:

a,b,c=2,5,100
print(a.bit_length(),b.bit_length(),c.bit_length()) #结果分别是2,3,7
'''
int   bit        bit_length
2   0000 0010        2
5   0000 0101        3
'''

bool 数据类型

这里主要讲一下 int str bool 之间的相互转换:

#int---->str (无条件转换)
a=1
s=str(a)  #'1'

#str-->int  (要求str必须全部由数字组成才可以进行转换)
s='123'   
a=int(s)   #123

# int-->bool
a=0
b=bool(a)  #False
a=1   #任意非零
b=bool(a)  #True

#bool-->int  (只有两种情况)
b=True
a=int(b)  #1 True:1
b=False
a=int(b)  #0 False:0

#str-->bool(仅空字符串才是False,其余均为True)
s=' '  #这里并不是空字符串!!,是个空格
print(bool(s))  #所以这里返回的是True
s=''  #这里的s才是空字符串
print(bool(s))  #所以返回的是False

字符串索引,切片,长度操作方法

对字符串的任何操作都是形成一个新的字符串!

对字符串的任何操作都是形成一个新的字符串!

对字符串的任何操作都是形成一个新的字符串!

s='xuanxuan'
print(s[0])  # x
print(s[0:3]) # xan 顾头不顾尾
print(s[-1]) # n
print(s[:])  # xuanxuan
print(s[0:-1]) #xuanxua

还可以跳着取:

print(s[:4:2]) #xa  [首:尾:步长]

其实还可以倒着取值:) 也就是把步长设成负值即可:)

print(s[::-3])  #nxu
print(s[::-1]) #nauxnaux

发现一个规律:

关于跳着取值,如果头位置在前,尾位置在后面,那么步长必须为正,才可以取到值;

如果头部元素位置靠后,尾部元素位置在前,那么步长必须为负,才可以取到值!

s='ABCDEF'
print(s[-3::-1])  #取DCBA
print(s[4:0:-2])  #EC
print(s[0:4:-2]) #虽不报错,但是输出为空
print(s[4:0:2])  #虽不报错,但是输出为空

 

posted @ 2018-08-11 19:09  写的BUG代码少  阅读(180)  评论(0编辑  收藏  举报