整数 布尔 列表 元组 字典

数字:

  整型 int(integer)

    python3中已经不区分整型int和长整型long,统一叫整型

  浮点型 float(相当于小数)

    举例:2e-4 == 2*(10**-4) == 0.0002              # e后面跟几就表示是10的几次方
       2.3e+3 == 2.3*(10**3) == 2300

  复数 complex

    复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。举例:(-5+4j)和(2.3-4.6j)是复数的例子,其中-5,4为实数,j为虚数。

布尔值:

  它只有2种状态:True 和 False

列表: 

  1 # __author:"#Cheng"
  2 # date:2018/2/13
  3 
  4 # 列表可以用来 增、删、改、查
  5 # [ ]用中括号的形式表现出来。
  6 # a = []  相当于生成了一段空的列表,并且赋了一个叫a的变量。
  7 # a = ['小明',‘小刚’,‘张三’,‘小李’,‘王二’]  列表中的元素用逗号隔开。它是存在位置关系的。
  8 # a[3] 表示,3是索引(下标),索引都是从0开始。该字符串表示变量为a的列表中的第四个元素,因此输出结果是:小李
  9 
 10 a = ['小明', '小刚', '张三', '小李', '王二']
 11 # 下面是从左到右取
 12 print(a[3])       # 取出小李
 13 print(a[1:3])     # 取出小刚和张三
 14 print(a[1:])      # 冒号后面没有索引号,默认取出至最后一个元素
 15 print(a[0:])      # 取出列表全部元素,同上
 16 print(a[1:-1])    # 取出到倒数第二个元素,最后一个元素不取出
 17 print(a[1:-1:2])  # 不连续,跳着取出元素:最后的2是“步幅”,就是隔一个取,如果换成1就是依次取,那就像上面一行
 18 print(a[1::2])    # 同上。从索引1取到最后一个元素,隔一个取一个,因为步幅为2
 19 
 20 # 下面是从右到左取
 21 print(a[4::-2])    # 索引3开始反着数,而且是隔一个取一个
 22 print(a[-1::-1])   # 从右往左提取全部元素:第一个-1是代表最后一个元素,第二个-1代表步幅从右往左
 23 
 24 # 取出的列表还可以继续赋一个变量,该变量的列表将与原列无关
 25 b = a[4::-2]  # b = ['王二', '张三', '小明']
 26 print(b)
 27 print(b[1::-1])
 28 
 29 # 判断某个元素是否在列表有以下三种方法
 30 # .count 数这个元素在列表有几个,如果是0的话就说明没有。
 31 # .index 根据内容查找对应的索引(下标)。
 32 # print ('宝露' in a) “宝露”是否在列表a里面,在就输出结果True,不在就输出结果False。
 33 # in用法的延伸:type(a) is list 判断a是否是一个列表,是输出True,否输出False
 34 
 35 # -----------------------------分割线-------------------------------
 36 
 37 # 增加
 38 
 39 # append 是追加,它会把增加的值放到列表的“最后一项”
 40 a.append('宝露')  # 在该列表最后一项加上“宝露”这个元素。括号里面是所添加内容的值。
 41 print(a[0:])
 42 
 43 # insert 是插入,可以插入任意位置,找需要填写对应索引值即可。
 44 a.insert(3, '马二')  # 括号里分别是新增位置的索引与新增的内容。
 45 print(a[0:])
 46 
 47 # extend  增加列表进另外一个列表(扩展列表)
 48 ext_a = [1, 2, 3]
 49 ext_b = [4, 5, 6]
 50 ext_a.extend(ext_b)  # 把ext_b列表增加到ext_a列表中了,但是并不影响ext_b
 51 print(ext_a)
 52 print(ext_b)
 53 
 54 # -----------------------------分割线-------------------------------
 55 
 56 # 修改
 57 
 58 # 一个元素的修改:
 59 a[3] = '马大哈'  # 先取出具体要修改的元素,然后直接赋值即可。比如这里我要把“马二”改成“马大哈”。
 60 print(a[0:])
 61 
 62 # 多个元素的修改:
 63 a[1:5:3] = ['小白', '大黑']  # 先取出要改的那几个元素,因为是多个元素,所以还是用中括号的列表格式把要改的元素写进去。例如把“小刚”和“小李”分别改成“小白”和“大黑”
 64 print(a[0:])
 65 
 66 # -----------------------------分割线-------------------------------
 67 
 68 # 删除
 69 
 70 # remove删除:只能一个一个删。是list(列表)的内置方法,因此通过例如a.remove就行了。
 71 
 72 a.remove(a[3])  # remove不能切片,一次只能删一个。
 73 # a.remove('马大哈') 也可以写成这样进行删除。
 74 print(a)
 75 
 76 
 77 # pop删除:括号里面直接跟索引就可以删除。不加索引默认删除列表最后一个元素。但是pop可以将删掉的结果保留再进行赋值。
 78 # a.pop(1) #这串字符表示删除了“小白”(索引是1)
 79 # 然后被删除的“小白”的值可以继续返回,能被赋值到新的变量,可以继续被使用。如下:
 80 b = a.pop(1)  # 之所以可以赋值给变量b,是因为pop是有return(返回值)的,它比较特殊
 81 print(a)
 82 print(b)
 83 
 84 # del删除:它啥都能删除。
 85 del a[2:4]  # 删除“大黑”和“王二”
 86 print(a)
 87 
 88 
 89 # -----------------------------分割线-------------------------------
 90 
 91 # ______________________________________下面是新列表案例
 92 
 93 # count
 94 # count 比例有一个列表,count可以计算出某个元素在该列表中出现的次数
 95 ex_count = ['王二', '三胖', '二狗', '王二', '三胖'].count('王二')   # 列表.count(此处为要数的对象)。数的数量可以赋值一个变量,然后print。
 96 print(ex_count)
 97 
 98 # len
 99 # 通过len可以查找列表长度,就是列表中所有元素数量!
100 
101 print(len(a))
102 
103 
104 # index 注意:如果列表中有好几个相同的元素,取能取相同元素中第一个的索引。
105 # index  通过具体元素找索引,之前是通过索引找具体元素
106 a.index('小明')  # 括号里是具体要找的元素内容
107 print(a.index('小明'))  # 输出索引值(下标)
108 
109 
110 # reverse
111 # reverse 正序或倒序进行排序
112 a.reverse()
113 print(a)
114 
115 
116 # sort
117 # sort 对数字进行排序
118 ex_num = [7, 8, 8, 5, 1, 7, 3, 8]
119 ex_num.sort()  # 括号
120 print(ex_num)
121 
122 # sort 对字符串进行排序 ,按ASCII码的顺序排列,因为在ASCII码中,每一个字符都有一个对应的编号。
123 a.sort()
124 print(a)
列表详解

元组: 

1 # __ author:"#Cheng"
2 # date:2018-02-13
3 
4 # tuple元组  可以理解为只读列表,不能修改。跟列表的区别就是----元组是小括号,列表是中括号。
5 tup_1 = ()  # 空元组
6 tup_2 = ('小程', '小马', '小李', )  # 后面一定要加逗号,加逗号才会被认为是元组。
7 
8 print(tup_2[1]) 
元组详解

字典:

  1 # __author:"Cheng"
  2 # date:2018/2/15
  3 
  4 # Dictionary 字典 :1.无序 2.键唯一
  5 # 字典是无序存储,因此也没有位置关系,与列表相比,它没有位置和索引
  6 
  7 # 不可变类型:整形、字符串、元组
  8 # 可变类型:列表、字典
  9 
 10 
 11 
 12 # 创建字典
 13 
 14 
 15 # 下面是创建字典 。字典是可修改的,但是它的键必须要存不可修改的元素!否则程序会报错。
 16 dic1 = {'name':'宝露', 'age':27, 'sex':'male', 'hobby':'学习', 'is_goodboy':True }  # 键值对里的值存什么都可以。字典用大括号创建,里面是一组一组的键值对,左边是键,右边是值。
 17 dic2 = dict((('name','宝露'),))  # 不常用。上面是第一种创建方式,这是第二种创建字典的方式。
 18 print(dic1) # 输出的结果是无序的,并不一定会按照上面的顺序输出。
 19 print(dic2)
 20 
 21 # 查1  通过键查值
 22 print(dic1['hobby'])  # 查字典的值用中括号,与列表类似,但是里面必须是键,而不是索引。
 23 
 24 # 查2 keys查字典里全部的键
 25 print(dic1.keys())  # 它所输出的是dict_keys(['name', 'age', 'sex', 'hobby', 'is_goodboy']),是新的数据类型,并不是列表。
 26 list(dic1.keys())  # 如果想把它们作为列表使用,可以用list把它们转换为list列表。
 27 print(list(dic1.keys()))    # 让我们输出看一下转换成列表以后是啥样儿吧。
 28 
 29 # 查3 values查字典里全部的值
 30 print(dic1.values())    # 它所输出的是dict_values(['宝露', 27, 'male', '学习', True]),是新的数据类型,并不是列表。
 31 list(dic1.values())  # 如果想把它们作为列表使用,可以用list把它们转换为list列表。
 32 print(list(dic1.values()))    # 让我们输出看一下转换成列表以后是啥样儿吧。
 33 
 34 
 35 # 查4 items查字典里全部的键值对
 36 print(dic1.items())     # 把你字典全部的键值对以元组的方式输出。
 37 print('查4')     # 如果想把它们作为列表使用,请看上面的方法吧,它是dict_items...
 38 
 39 
 40 
 41 # 增加字典
 42 
 43 # 增加字典,方法一:
 44 dic_add = {'Monday':'上班'}   # 创建一个dic_add的字典
 45 print(dic_add)  # 输出字典
 46 dic_add['时间'] = '上午9:00'    # 新增一个键值对
 47 print(dic_add)  # 查看新增后的字典
 48 
 49 # 增加字典,方法二:
 50 # setdefault 是有返回值的!
 51 # 如果已经有了重名键,那么就不会改动,并且返回原键的值。如果没有,那么将增加键值对,返回新增的值。
 52 dic_add.setdefault('下班时间', '下午5:00')     # setdefault是字典自带的对象,键值分别用逗号隔开,并不是冒号哦。
 53 print(dic_add)    # 如果键名与现有键名重复,那么将不起作用,不会对现在有键的值进行修改并且也不会增加。
 54 
 55 
 56 
 57 # 修改字典
 58 # 把键取出来,直接赋值就行了,跟列表的修改方式一样。只不过列表是通过索引改,字典是通过键来改。
 59 
 60 # 修改方式一:
 61 dic_change = {'周一天气':'晴朗'}  # 创建字典
 62 print(dic_change)   # 输出刚刚创建的字典
 63 dic_change['周一天气'] = '小雨夹雪'     # 根据键,修改值
 64 print(dic_change)     # 输出查看
 65 
 66 
 67 # 修改方式二:update
 68 # 将一个字典内容全部加到另外一个字典,键重复的话将旧值将被覆盖
 69 dic_change_1 = {'生活':'工作', '努力':'拼搏'}
 70 dic_change_2 = {'2018':'加油', '努力':'奋斗'}
 71 dic_change_1.update(dic_change_2)    # 把dic_change_2 里的内容,全部加到dic_change_1里面去。谁在第一个谁是老大。
 72 print(dic_change_1)
 73 
 74 
 75 
 76 # 删除
 77 # del 字典 : 删除整个字典。
 78 
 79 # 删除方法一 del:
 80 # del 输入键,删除一组键值对
 81 dic_del = {'梦想1':'理想1', '回忆1':'青春1', '消逝1':'光阴1'}
 82 print(dic_del)
 83 del dic_del['梦想1']
 84 print(dic_del)
 85 
 86 # 删除方法二 pop 有返回值,不返回键,只返回值:
 87 # 列表里的pop通过索引删除,字典通过键删除。
 88 dic_del_1 = {'梦想3':'理想3', '回忆3':'青春3', '消逝3':'光阴3'}
 89 print(dic_del_1)
 90 re_test = dic_del_1.pop('消逝3')
 91 print(re_test)     # 返回的是值,而不是键,也不是键值对
 92 print(dic_del_1)
 93 
 94 
 95 # 删除方法三 popitem
 96 # popitem 随机删除并以元组方式返回值
 97 dic_del_a = {'梦想a':'理想a', '回忆a':'青春a', '消逝a':'光阴a'}
 98 print(dic_del_a)
 99 re_test_a = dic_del_a.popitem()
100 print(re_test_a)     # 返回随机删除的键值对
101 print(dic_del_a)     # 看看现在的字典
102 
103 
104 # 删除方法四 clear 清空字典:
105 # clear 清空字典,变成一个空字典,但是所赋值的变量还在
106 dic_del_2 = {'梦想2':'理想2', '回忆2':'青春2', '消逝2':'光阴2'}
107 print(dic_del_2)
108 dic_del_2.clear()
109 print(dic_del_2)
110 
111 
112 
113 
114 # __________________________________其它操作:
115 
116 # 创建值都是一样的字典
117 # 弊端:值是单个元素修改就不要紧,如果值是一个列表,当修改这个对应字典键的列表中的某个索引对应的内容时,把把其它键值对的值(列表)也一起替换掉。
118 dic_new = dict.fromkeys(['小芳', '小丽', '小美'], '')   # 括号里面的逗号左边是列表(相当于不同的键),右边相当于值。左边列表里的键都对应相同的值。
119 print(dic_new) # 返回一个字典,它们的键不同,但是值相同。
120 
121 
122 # 字典的嵌套
123 info_stu = {'小张':{'age':23, 'sex':'', 'hobby':'读书'},
124             '小李':{'age':19, 'sex':'', 'hobby':'看电影'},
125             '小王':{'age':29, 'sex':'', 'hobby':'游泳'},
126             '小孟':{'age':27, 'sex':'', 'hobby':'跑步'},
127             '小丁':{'age':22, 'sex':'', 'hobby':'旅游'}
128 }
129 
130 print('小张', info_stu['小张'])   # 打印小张信息
131 print(info_stu['小张']['hobby'])    # 打印小张爱好
132 
133 
134 
135 
136 # sorted 字典的排序
137 # 根据键进行排序 如果是数字就由小到大,如果是字符串,就按照ASCII码排序
138 dic_paixu = {6:'520', 8:'6', 3:'晚餐'}
139 print(sorted(dic_paixu))    # 对键进行排序
140 print(sorted(dic_paixu.items()))    # 对键值对进行排序,相当于对键进行排序,跟上面一样
141 print(sorted(dic_paixu.values()))    # 对值进行排序
142 
143 
144 
145 
146 # 字典的遍历
147 # 默认循环遍历字典时,会默认循环遍历里的键 相当于dic.keys
148 dic_loop = {'小学':'拼音', '中学':'代数', '大学':'逃课'}  # 输出遍历 键
149 for i in dic_loop:
150     print(i)
151 
152 dic_loop = {'小学':'拼音', '中学':'代数', '大学':'逃课'}  # 输出遍历 值
153 for i in dic_loop.values():
154     print(i)
155 
156 dic_loop = {'小学':'拼音', '中学':'代数', '大学':'逃课'}  # 输出遍历 键值 (推荐)
157 for i in dic_loop:
158     print(i, dic_loop[i])
159 
160 dic_loop = {'小学':'拼音', '中学':'代数', '大学':'逃课'}  # 输出遍历 键值 (items)
161 for i, v in dic_loop.items():
162     print(i, v) 
163     
字典详解
原文地址:https://www.cnblogs.com/cbl321/p/8444246.html