1、python数据类型

基本数据类型包括:数值(整型、浮点型、复数等) 字符串 布尔(bool) 和 none

复合数据类型包括:列表 元组 字典 和集合

根据数据是否可变,数据类型又可以分为:可变类型和不可变类型,

可变类型包括:列表、集合、字典,上述其他的都属于不可变类型。
总结:不可变数据类型更改后地址发生改变,可变数据类型更改地址不发生改变

可变类型 列表 更改后 地址不发生 改变
>>> a = [1, 2, 3]  
>>> id(a)  
41575088  
>>> a.append(4)  
>>> id(a)  
41575088  
>>> a += [2]  
>>> id(a)  
41575088

2、is和==区别

Python中对象包含的三个基本要素,分别是:id(身份标识)、type(数据类型)和value(值)。


== 比较对象的值是否相等
is 比较两个对象的id是否相等

3、字符串、列表、字典 常用的函数

第一模块第二章-数据类型整理

出现遗忘很正常,要某个数据类型下点击小圆点后观看 相应的函数使用

 (1)字符串的常见函数用法

'-'.join(sequence)可连接字符串、集合,元组、字典

Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。


split()通过指定分隔符对字符串进行切片----形成列表
str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
num -- 分割次数。
返回分割后的字符串列表。

切片[ : ]截取字符串中的一部分(start,end)顾头不顾尾

 

python复合列表筛选数据 python复合数据类型有_数据类型

 

(2)列表的常见用法

list.append(obj)
在列表末尾添加新的对象

list.count(obj)
统计某个元素在列表中出现的次数

list.extend(seq)
在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

    list.index(obj)
从列表中找出某个值第一个匹配项的索引位置

list.insert(index, obj)
将对象插入列表

    list.pop([index=-1])
移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

list.reverse()
反向列表中元素

list.sort(cmp=None, key=None, reverse=False)
对原列表进行排序
reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。

 

python复合列表筛选数据 python复合数据类型有_数据类型_02

 

 (3)字典常见函数

python复合列表筛选数据 python复合数据类型有_Python_03

dic = {}

 

dic = {'a':1,'b':2}
print(dic.keys(),'  ',list(dic.keys()))

用list函数来输出列表

print(dic.values(),'  ',list(dic.values()))
print(dic.items(),'  ',list(dic.items()))

4、Python高阶函数(Map、Reduce、Filter)和lambda函数一起使用 ,三剑客

Map函数 
map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。 

print(list(map(lambda x:x*2,[1,2,3,4])))  [2, 4, 6, 8]

reduce函数  reduce() 函数会对参数序列中元素进行累积。
累积求和运算:或者
from functools import reduce
print(reduce(lambda x,y:x+y,[1,2,3,4,5,6]))

返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换

filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。
filter(function, iterable)

a = filter(lambda x: x % 2 == 0, range(10))
print(list(a))
[0, 2, 4, 6, 8]

 

lambda匿名函数

zip函数

 

python复合列表筛选数据 python复合数据类型有_Python_04

 

 

Python 内置函数

python复合列表筛选数据 python复合数据类型有_Python_05

 

 

进制转换的问题?

# 十进制转 二进制
print(bin(60))
# 十进制转16进制
print(hex(60))
# 二进制转十进制
print(int('00111100',2))
# 十六进制转10进制
print(int('0x11010100101',16))

 

Python enumerate() 函数

python复合列表筛选数据 python复合数据类型有_Python_06

 

 

 

# 列表,元祖,字符串
seasons = ['Spring', 'Summer', 'Fall', 'Winter']
print(list(enumerate(seasons)))
for i in enumerate(seasons):
    print(i[0],i[1])
str = 'spring'
print(list(enumerate(str)))

dic = {'a':123,'b':456,'c':789}
print(list(enumerate(dic)))

Python eval() 函数

eval() 函数用来执行一个字符串表达式,并返回表达式的值。

str2 = "{'a':123,'b':456,'c':789}"
print(type(eval(str2)))
print(eval( '3 * 2' ))

python复合列表筛选数据 python复合数据类型有_python复合列表筛选数据_07

 

时间戳的转化

import time
print(time.time())

print(time.localtime(time.time()))

data_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time()))
print('data_time-->',data_time)

print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(101434)))
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(118527)))
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(101434*1000)))
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(25227.526370)))
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(1559297416.090523)))

python复合列表筛选数据 python复合数据类型有_Python_08

 

2、python三剑客

python知识点梳理,pandas梳理,python内置函数,三剑客,itertools工具包

3、常见函数用法

字典 items() ,key(),values()

 

 functools 与 itertools

 

 

列表生成式和字典生成式

data = {'obj'+str(i) +k :[] for i in range(1,65) for k in ['a','b','c','d']}
print(data)data = {'obj'+str(i) +k :[] for i in range(1,65) for k in ['a','b','c','d']}
print(data)

 

 

三元函数????