1. 列表相加
(1)利用操作符+
a = [1,2,3]
b = [4,5,6]
c = a + b
print(c)
#c的结果:[1,2,3,4,5,6]
(2)利用extend()
a = [1,2,3]
b = [4,5,6]
a.extend(b)
print(a)
#a的结果:[1,2,3,4,5,6]
+ 左右两边组合类型要一致,不能列表+元组
extend() 不要求类型一致, 可以列表.extend(元组)
(3)利用append()
a = [1, 2, 3]
b = 4
a.append(b)
# a输出为 [1, 2, 3, 4]
c = [5, 6]
a.append(c)
# a输出为 [1, 2, 3, 4, [5, 6]]
2. 可以用于从CSV文件中解析一二维数据的是:
split() strip()
3. CSV文件描述:
- 整个CSV文件是一个二维数据
- CSV文件格式是一种通用的、相对简单的文件格式,应用于程序之间转移表格数据
- CSV文件的每一行是一维数据,可以使用Python中的列表类型表示
4. time库
time.time() 查看当前时间戳
time.localtime() 默认查看当前时间的时间元组 传入时间戳,返回时间元组
time.gmtime() 默认查看当前时间的时间元组 传入时间戳,返回时间元组 (UTC时区 0时区)
time.asctime() 默认查看当前字符串形式时间 传入时间元组,返回字符串时间
time.ctime() 默认查看当前字符串形式时间 传入时间戳,返回字符串时间
time.mktime() 传入时间元组, 返回时间戳
time.strftime() 传入时间元组,返回字符串时间
time.strptime() 传入字符串时间,返回时间元组
time.perf_counter() 返回一个CPU级别的精确时间计数值,单位为秒。由于这个计数值起点不确定,连续调用差值才有意义。
time.sleep(s): s是休眠时间,单位是秒,可以是浮点数
5. max() min()
判断字符串中ascll最大字符: max("fweyt")
加key:
判断哪个元素出现频率最高: max(set(a), key=lambda x: a.count(x))
判断哪个元素的正弦值最小: min(a, key=lambda x: math.sin(x))
6. 结构化程序设计方法原则:
自顶向下 模块化 逐步求精
7. 列表内双层循环:
ls = [(m, n) for m in 'ABC' for n in 'ABC' if m!=n]
8. 线性链表:
存储空间不一定连续, 且各元素的存储顺序是任意的
9. 复数类型:
实部:z.real 虚部:z.imag
复数的虚部部分通过后续“j”或“J”来表示
10. python二进制文件打开模式:
a+ 可读写模式,写只能写在文件末尾
w+ 可读写,与a+的区别是要清空文件内容
r+ 可读写,与a+的区别是可以写到文件任何位置
11. 所有文件都可能以二进制方式打开
12. pandas库:
(1) Serial对象: 一维带索引数组,索引可自定义
Serial创建:list、dict、ndarray
(2) DataFrame对象:二维带索引数组,索引可自定义
行标签:index 列标签:columns
df.loc['..'] 行标签索引 df.iloc[x] 行位置索引
loc和iloc是针对行标签的,所以不能直接用列标签进行选择,列标签的选择要建立在选择行标签的基础上
(3) pandas数据读写:
csv: read_csv() to_csv()
excel: read_excel() to_excel()
sql: read_sql()
(4) pandas 和numpy
- pandas库是基于numpy库开发实现的
- numpy库更关心数据间开发,pandas库更关心数据与索引间的关系
- pandas可以表示n维数据(多重索引)