Learn_Day3 补充(基本数据类型)

上节课内容补充

1、基本数据类型
    (1)int:
            a、两种方式创建:直接创建;用__init__创建
            b、内部优化:在一定范围内重复的数字共用同一个id,范围可自定义,默认范围-5~257
            c、长度范围:2.7中32位(-2**31~2**31-1),64位(-2**63~2**63-1),超出范围的数字自动转换为长整型Long,数字末尾加L
          3.5中只有int无Long
    (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
# 类:举例

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
posted @ 2017-02-02 14:28  Grisom  阅读(152)  评论(0编辑  收藏  举报