一. 基础数据类型
1. 基础数据类型有以下几种:
整数(int)
字符串(str)
布尔值(bool)
列表(list)
元组(tuple)
字典(dict)
集合(set)
2. 整数—— int
这里主要熟悉二进制与十进制之间的对应关系与相互转化的方法:
1). 二进制与十进制的关系
i = 4
print(i.bit_length()) # 3
# 获取十进制转化成二进制的有效位数
二进制 十进制
0000 0100 4
# 这里二进制中的 100 即是有效位数
2). 二进制与十进制之间的转化
二进制转化成十进制
示例:
二进制 0010 1101
0 0 1 0 1 1 0 1
0*2**7 + 0*2**6 + 1*2**5 + 0*2**4 + 1*2**3 + 1*2**2 + 0*2**1 + 1*2**0
十进制结果就是上面这行所有乘积的和
十进制转化成二进制
方法:对2取余 逆向排列
比如十进制数 42
除法 商 余数
42/2 21 0
21/2 10 1
10/2 5 0
5/2 2 1
2/2 1 0
1/2 0 1
这里不够8位,直接补0即可,所以42对应的二进制(逆向排序)是 00101010
PS:前面的两个 0 是补上去的.
3. 字符串—— str
1 # 字符串的索引与切片 2 3 # 注意:字符串的切片索引以及常用操作方法,都是形成新的字符串,与原来的字符串没有关系 4 s = [1, 2, 3] 5 s1 = [0] 6 print(s == s1) # False 7 8 # 可以得知这里的 s 与 s1 没有什么关系 9 10 # 反向/倒序取值要加上反向步长 11 12 s = "python骑士计划3期" 13 s1 = s[-1:-4:-1] # 期3划 注意这里最后的 -1 是反向步长 14 s2 = s[:5:-1] # 期3划计士骑 15 16 # 这里s2 中的5相当于从右往左计数是0开始的 17 18 # 字符串变成列表——使用 split() 19 20 s = ":a:b:c" 21 print(s.split(":")) # ["", "a", "b", "c"] 22 23 #如果只想在 "a:b:c"中使用 split(), 使用切片新建一个变量即可 24 25 # 列表转化成字符串 (前提:列表内元素都是字符串,否则会报错)——使用join() 26 s = ["a", "b", "c"] 27 s1 = s.join() # a b c 28 29 # replace() 只能从左往右依次替换,不能一开始在中间替换 30 31 # format 格式化输出 32 # 大括号内不能加空格,否则会报错. 33 34 # 在大括号内写明0,1,2 之类的好处是可以重复使用 35 36 name = "hxy" 37 age = 18 38 s = "我是{0}, 我今年{1}岁, 我依然是{0}".format (name, age) 39 40 # ‘我是hxy, 我今年18岁, 我依然是hxy‘ 41 42 # is 用法 43 # 比如购物后付钱,要用户输入前,如果不小心输入"1000a",会报错,可以这样: 44 45 money = input(">>>)" 46 if money.isdigit(): 47 money = int(money) 48 49 # len() 是一个公共方法 50 51 s = "jlaj klajsdk" 52 print(len(s)) 53 54 # 这里不用 s.len() 就是因为 len() 是公共方法
原文:https://www.cnblogs.com/shawnhuang/p/10156030.html