Learn_Day3

上节课内容补充

1、基本数据类型

(1)int:

a、两种方式创建:直接创建;用__init__创建

b、内部优化:在一定范围内重复的数字共用同一个id,范围可自定义,默认范围-5~257

c、长度范围:32位(-2**31~2**31-1),64位(-2**63~2**63-1),

超出范围的数字自动转换为长整型Long,数字末尾加L

(2)str:

a、创建:无参数,创建字符串;一个参数,创建普通字符串;两个参数,int(字节,编码)(字符串与字节自由转换)

b、编码:3.5版本中for循环时循环的每一个元素是“字符”

 1 name = "李璐"
 2
 3 for i in name:
 4     print(i)  # 循环的每一个字符串是"字符"
 5     """
 6     李
 7     璐
 8     """
 9 bytes_list = bytes(i, encoding="utf-8")
10 print(bytes_list)  # 默认每一个字节都是16进制表示
11 """
12 b‘\xe7\x92\x90‘
13 """
14 for b in bytes_list:
15     print(b)  # 默认每一个字节都是10进制表示
16     print(bin(b))  # 2进制
17     """
18     231
19     0b11100111
20     146
21     0b10010010
22     144
23     0b10010000
24     """

str

(3)list:

a、创建

b、转换

(4)tuple:

a、创建

b、转换

c、嵌套(元素不可修改)

d、元组的元素不可修改,嵌套的列表,字典等可修改

1 t = (11, 22, ["alex", {"k1": "v1"}])
2 print(t)
3 # (11, 22, [‘alex‘, {‘k1‘: ‘v1‘}])
4 t[2].append(123)
5 print(t)
6 # (11, 22, [‘alex‘, {‘k1‘: ‘v1‘}, 123])

tuple

   (5)dict:

a、创建

b、fromkeys 指定key和values创建一个新的字典

 1 # 创建
 2 a1 = {"k1": 123}
 3 print(1, a1)
 4 # {‘k1‘: 123}
 5
 6 a2 = dict(k1=123, k2=456)
 7 print(2, a2)
 8 # {‘k1‘: 123, ‘k2‘: 456}
 9
10 li = [11, 22, 33]
11 new_dict = dict(enumerate(li))
12 print(3, new_dict)
13 # {0: 11, 1: 22, 2: 33}
14
15 # 特殊功能
16 dic = {"k1": 11, "k2": 22, "k3": 33, "k4": 44}
17 n = dict.fromkeys(["k1", "k2", "k3"], "alex")
18 print(4, n)
19 # {‘k1‘: ‘alex‘, ‘k3‘: ‘alex‘, ‘k2‘: ‘alex‘}
20
21 n1 = dict.fromkeys(["k1", "k2", "k3"], [])
22 n1["k1"].append("x")
23 print(5, n1)
24 # {‘k1‘: [‘x‘], ‘k2‘: [‘x‘], ‘k3‘: [‘x‘]}
25
26 n2 = {‘k1‘: [], ‘k2‘: [], ‘k3‘: []}
27 n2["k1"].append("x")
28 print(6, n2)
29 # {‘k1‘: [‘x‘], ‘k2‘: [], ‘k3‘: []}

dict

内容整理:

str:一般字符串,执行一个功能,生成一个新的内容,原内容不变

list; tuple;dict:执行一个功能,自身进行变化

@staticmethod  有责通过类调用(类.方法),无责通过对象调用(对象.方法)

 1 class MyInt(object):
 2     def __init__(self):
 3         print("init")
 4     def __call__(self, *args, **kwargs):
 5         print("ok")
 6
 7 obj = MyInt()
 8 # 输出结果:init
 9 obj()
10 # 输出结果:0k

# 类:举例

时间: 2024-09-30 16:04:08

Learn_Day3的相关文章