我的py3笔记-基础数据类型

来源:互联网 发布:在java当中interface 编辑:程序博客网 时间:2024/06/04 18:33

tip

type(2/2) 得到float

type(2//2) 得到int 相当于整除

进制转换

二进制: 0bxx 例: 0b10 => 2 转换方法 bin() 例: bin(10) bin(Oo7).

八进制: 0oxx 例: 0o10 => 8 转换方法 oct() 例: 略

十进制: 默认进制 转换方法 int() 例: 略

十六进制: 0xxx 例: 0x10 => 16 转换方法 hex() 例: 略

布尔与复数

1.布尔 bool

真: True

假: False

布尔类型,也是属于Number类型. 例: int(True) => 1 bool(1) => True.
字符串和列表也可以转换为bool
bool(None) 为 False

  1. 复数(一般用的很少)
    36j

字符串 str

单引号 双引号 三引号 没啥特别的.
原式字符串 r” 所见即所得. 不需要加转义字符

字符串运算:
‘+’号 ‘hello’ + ‘world’ => ‘helloworld’
‘号 ‘hello’ 3 => ‘hellohellohello’
获取字符串某个字符: ‘hello’[0] 负数也可用.下同理.
截取字符串: ‘hello world’[0:5] 从0到4. 如果超过,按最长的算.
‘hello world’[6:] 从6到末尾

列表(list)

其实就是数组,[1,2,true,false,[],’hello’]

注意,当访问写法为 [1,2,true,false,[],’hello’][0:] 时, 得到的还是一个list.

元祖tuple

(1,2,3,true,false,’helloworld’)
type(‘hello’) => str

序列

str,list,tuple 其实都是序列,他们有共通的操作方法,
除了上述的之外,还有 max,min.
当排序内容为字符时,以ascii排.气质 ord()方法可以输出字符的adcii码

集合 set

{1,2,3,4,5,6,7}

1.集合是无序的

2.集合的内容是不重复的

支持len in

求差集: {1,2,3,4,5,6} - {3,4}

求交集: {1,2,3,4,5,6} & {3,4}

求并集: {1,2,3,4,5,6} |{3,4,5}

定义一个空集合: type(set())

字典 dict

{key1:value1, key2:value2…}

访问方式{key1:value1, key2:value2}[key1]

dict不允许两个相同的key, 如果有,默认会造成覆盖

{1:’我是字典’, ‘1’:’我是字典’} 其中 1与’1’ 是两个不同的key.

总结: value可以是任意类型 key只能为不可变的类型:int str tuple

类型比较

对象三个特征:
身份: id
值: value
类型:type.

比较类型的时候,可以用type(a) == int 也可以用isinstance(a,(int,str,…))

推荐用isinstance(),可以比较子类是否是某个类类型.
以上.