Python学习笔记-基本数据类型

数据类型

Number : 数字
int = 整数
float = 浮点数   
--- 其他语言:单精度(float),双精度(double)
--- int 与 int 的加减乘得到的是 int ,int 与 float 的加减乘得到的是 float 
--- int 相除(/)得到的数据类型是 float ,如果需要得到 int 使用(//)相除

bool : 布尔,表示真和假
True = 真 >> 非数字 0 >> 字符串 >> 列表
False = 假  >> 数字 0 >> 空字符 >> 空列表 >> None
--- 首字母需要大写

complex : 复数 = *j
  >> 36j 
str : 字符串   (单引号,双引号,三引号)
'Hello world' 
"Hello world"
'1'
"Let's go"
'Let"s go'
'Let\' go'
  >>> Let' go
--- 引号表示字符串时,成对出现
--- \ 为转义字符,转义为原始字符
'''
Hello world
Hello world
'''
"""
Hello world
Hello world
"""
  >>> Helllo world\nHello world
--- 三引号可以用与换行
--- \n 回车转义字符
'Hello\
world'
  >>> 'Hello world'
--- 单引号加 \ 也能实现 IDLE 换行

1. 转义字符   (特殊的字符)
\n = 换行
\r = 回车
\' = 单引号
\t = 横向制表符
\* = 转义为原始字符
r字符串 = 转义为原始字符串
--- 当一个字符串前面加入 r ,字符串将转义为原始字符串

2. 字符串运算
\+ = 拼接
'hello' + 'world' 
  >>> helloworld
\* = 出现次数相乘
'hello' * 2 
  >>> hellohello

[*] = 获取字符串内字符
'hello world'[1]    >>> e
'hello world'[-1]   >>> d
'hello world'[5]    >>> 空格(空格也是一个字符)
'hello world'[0:4]  >>> hell
'hello world'[0:5]  >>> hello
'hello world'[0:-1] >>> hello worl
'hello world'[6:]   >>> world
'hello world'[:-6]  >>> hello
'hello world'[-5:]  >>> world
--- : 取第几个到第几个
--- []内正数为正向取数,从0开始计数。[]内为负数为反向取数,从1开始计数

进制表示和转换

0b = 二进制    >>> 0b10
0o = 八进制    >>> 0o11
0x = 十六进制    >>> 0x1F

1. 任意进制转换为二进制 = bin(*)
bin(10) >>> 0b1010
bin(0o7) >>> 0b111
bin(0xE) >>> 0b1110

2. 任意进制转换为十进制 = int(*)
3. 任意进制转换为十六进制 = hex(*)
4. 任意进制转换为八进制 = oct(*)

序列的概念和定义

列表定义及操作 (list)

1. 定义列表
[1,2,3,4,5,6]
[1,2,'a','b',True,False]
[1,2,['abc','efg'],'a',[True,False]]  = 嵌套列表
[] = 定义空的列表
--- 列表内可以是不同数据类型,数字、字符串、布尔甚至列表都可以,几种类型混合也可以的

2. 列表基本操作
列表内访问
['a','b','c'][0]  >>> a
['a','b','c'][0:2]  >>> ['a','b']
['a','b','c'][-1:]  >>> ['c']

列表内追加
['a','b','c']+['d']  >>> ['a','b','c','d']
['a','b','c']*2 >>> ['a','b','c','a','b','c']

元组定义及操作 (tuple)

1. 定义元组
(1,2,3,4,5,6)
(1,2,'a','b',True,False)
(1,2,('abc','efg'),'a',(True,False))  = 嵌套元组
(1,) = 定义1个字符的元组
() = 定义空的元组
--- 元组内可以是不同数据类型,数字、字符串、布尔甚至元组都可以,几种类型混合也可以的

2. 元组基本操作
元组内访问
('a','b','c')[0]  >>> a  = 序列
('a','b','c')[0:2]  >>>(['a','b')  = 切片
('a','b','c')[-1:]  >>> ('c')
--- 元组是不可变的,可以访问但不能像列表那样去追加
ps:序列包含 str、list、tuple,这几种都可以看作序列、切片

in = 肯定判断
3 in [1,2,3,4,5] >>> True  = 判断3是不是在列表内,得到的结果是布尔类型

not in = 否定判断
8 not in [1,2,3,4,5]         >>> False  = 判断8是不是不在列表内,得到的结果是布尔类型

len = 获取列表、元组字符长度
  len[1,2,3,4,5,6]     >>> 6
  len('hello world')   >>> 11

max = 获取列表、元组最大值
  max[1,2,3,4,5,6]     >>> 6
  max('hello world')   >>> w

min = 获取列表、元组最大值
  min[1,2,3,4,5,6]     >>> 1
  min('helloworld')    >>> d
  ps:max,min 使用数据类型是 str 的时候,按字母 a-z(阿斯克码 / ASCII)来排序大小

ord = 任意字符获取(阿斯克码 / ASCII) 大小
  ord('w')    >>> 119
  ord('d')    >>>  100
  ord(' ')    >>> 32

集合

set = 集合
{1,2,3,4,5,6}  = 定义一个集合

set() = 定义一个空的集合
--- 集合是无序的,不能用顺序的方式访问、不能切片
{1,1,2,2,3,3,4,4}  >>>  {1,2,3,4}
--- 集合是不重复的
ps:集合是支持 len 、in 、not in 等操作的

集合运算
1. 差集 - 
{1,2,3,4,5,6} - {3,4}  >>> {1,2,5,6}

2. 交集 &
{1,2,3,4,5,6} & {3,4}  >>> {3,4}

3. 合集 |
{1,2,3,4,5,6} | {3,4,7}  >>> {1,2,3,4,5,6,7}

字典

dict = 字典
{} = 定义一个空的字典
{key1:value1,key2value2,key3:value3} = 定义字典
--- key 必须是不可变的类型,不能有重复相同的,如有相同则只会“认”最后一个
--- value 可以是可变的类型,可以是嵌套字典
--- 字典是用单个或者多个 key 和 value 组成的集合类型,也是无序的,key 和 value 是同时出现的
{'q':'换枪','w':'向前','e':'换刀','r':'换弹'}['q']  >>> 换枪
--- 使用 key 来访问 value 
添加新评论