继续上次的Python入门学习
数据类型
进制转化
二进制转化为十进制
1100011 = 1 * 2^6 + 1*2^5 + 1*2^1 + 1
= 64 + 32 + 2 + 1 = 99
123 = 1 * 10^2 + 2 * 10^1 + 3 * 10^0
十进制转化为二进制
辗转相除法,倒除法
56 = 111000 = 32 + 16 + 8 = 56
56
28 0
14 0
7 0
3 1
1 1
0 1
还有简便方法
八进制
01234567
八进制转化为十进制
0o56 = 5*8^1 + 6 = 46
十进制转八进制
46
5 6
0 5
二进制转八进制(三位一取)
010 110 011 001 = 0o2631
十六进制
0-9 a(10)bcdef(15)
0xf85 = 15*16^2 + 8*16^1 + 5 =
二进制转十六进制(四位一取)
0011 0100 1101 = 0x34d
单位换算
一个0或者一个1称之为一位,英文称之为1bit(比特),简写为1b
计算机是以字节(bytes)为单位,简写为1B
1B = 8b 0000 0000 === 1111 1111 0===2^8-1=255
1024B = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
数据类型
整型(int)、浮点(float)、布尔(真假,bool)、空(None)、字符串(重要,str)、列表(list)、元组(tuple)、字典(dict)、集合(无序性、唯一性, set)
字符串
定义:用单引号或者双引号括起来的东西,两者没有区别
注意:单引号中不能再加单引号
双引号中不能再加双引号
字符串长度
len(string)用来计算字符串长度,有多少个就是多少,无论是汉子,字母或者数字
字符串里面的转义
转义就是将有意义的变为无意义的,无意义的变为有意义的
\n 换行符
\t 制表符
\r 回车符
可以通过转义让他们失去意义 例:\\n
在字符串前面加上r , 让所有转义字符都是去意义 (一般用在路径前面)
例:h = r'C:\Users\ZBLi\Desktop\1801\day02\2- jinzhi.py'
字符串的加号和乘号
+ 两个字符串相加就是字符串的拼接
* 字符串重复n次
字符串中字符的提取
从左到右,下标从0开始 提取方式为 a[0]
从右到左,下标从-1开始 a[-1]
【注】下标不能越界
字符串的切片
字符串切片会得到一个新的字符串
格式 a[start:end:step]
提取从start开始,到end结束的所有字符,包含start下标,不包含end下标
a[0:5] == a[:5]
a[18:] == a[-5:]
a[2:-2]
a[:] 提取所有
a[0:10:2] 从0-10隔一个取一个
a[::2] 从头到尾每隔一个取一个
a[16:11:-1] 倒着提取指定的字符
a[::-1] 字符串的逆序
字符串的特性
不可变:字符串里面的字符不可变
字符串的格式化
第一种写法:
'我叫%s, 我喜欢%s, 我今年%d岁了, 我的身高为%dcm' % ('林志颖', '张柏芝', 50, 165)
占位符:
%s : 留给字符串进行填充的
%d : 留给整型用的
%10d 一共占用10位,前面补空格
%010d 一共占用10位,前面补零
%f : 留给浮点用的 默认后面保留6位小数
%.2f 保留两位小数
%10.2f 一共占用10位,前面补空格
%010.2f 一共占用10位,前面补零
%o : 将十进制按照八进制打印
%x : 将十进制按照十六进制打印
第二种写法:
a = '我叫{}, 我喜欢看{}, 我喜欢的男歌星是{}, 我喜欢的电影演员是{}'.format('裴艳艳', '肖申克的救赎', '刘 德华', '周润发')
a = '我叫{3}, 我喜欢看{2}, 我喜欢的男歌星是{1}, 我喜欢的电影演员是{0}'.format('裴艳艳', '肖申克的救 赎', '刘德华', '周润发')
a = '我叫{yanyan}, 我喜欢看{jiu}, 我喜欢的男歌星是{hua}, 我喜欢的电影演员是{fa}'.format(jiu='裴艳艳', hua='肖申克的救赎', fa='刘德华', yanyan='周润发')
列表(list)
定义:lt = [元素1, 元素2, 元素3]
列表可以存放任意的数据类型
取值:
lt[下标]
从左到右,下标从0开始
从右到左,下标从-1开始
【注】不能越界
列表中嵌套列表,接着后面加中括号取值即可
可变性:
和字符串的不可变相反,列表中元素可以改变
列表中的加号和乘号
+ 得到一个新列表,元素就是两个列表元素的和
* 得到新列表,将原列表中的元素重复n次
【注】列表只能和列表相加
赋值
[a, b, c] = [1000, 2000, 3000]
前后个数必须相等
列表的切片
lt[start:end:step]
列表切片之后得到一个新列表
lt[::] = [] 清空整个列表
lt[0:2] = [] 清除列表前两个元素
其改变的就是lt本身
元组(tuple)
定义:tp = ()
和列表几乎一样,但是是通过小括号括起来的
访问元素和列表一样
【注】如果元组中只有一个元素,要记得加一个逗号
元组切片
和列表、字符串切片都一样
元组切片之后还是元组
元组中的加号和乘号
+ 得到新元组,包含两个元组中所有元素
* 重复几次,同列表字符串一样
day01《==== ====》day03