数字:python
整型 int(integer)app
python3中已经不区分整型int和长整型long,统一叫整型ide
浮点型 float(至关于小数)oop
举例:2e-4 == 2*(10**-4) == 0.0002 # e后面跟几就表示是10的几回方
2.3e+3 == 2.3*(10**3) == 2300学习
复数 complexspa
复数由实数部分和虚数部分组成,通常形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。举例:(-5+4j)和(2.3-4.6j)是复数的例子,其中-5,4为实数,j为虚数。code
布尔值:对象
它只有2种状态:True 和 Falseblog
列表: 排序
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