文章目录
一、保存列表
1、保存为.txt文件
注:保存.txt需要将列表内容转为字符串格式,所以一般都是一列存一个元素
##保存
ipTable=['123.111.111.1','111.111.111.1']
fileObject = open('sampleList.txt', 'w')
for ip in ipTable:
fileObject.write(str(ip))
fileObject.write('\n')
fileObject.close()
##读取
f = open("sampleList.txt","r") #设置文件对象
table = f.read() #将txt文件的所有内容读入到字符串str中
f.close() #将文件关闭
2、保存为.npy格式
import numpy as np
graphTable = [
[[0,3],[1,3],1,'1'], #A-B
[[1,3],[2,3],1,'2'], #B-C
[[2,3],[2,1],2,'3'], #C-H
[[1,3],[1,2],1,'4'], #B-D
[[1,2],[1,1],1,'5'], #D-F
[[1,2],[0,0],3,'6'], #D-S
[[1,1],[2,1],1,'7'], #F-H
[[1,1],[3,1],4,'8'], #F-I
[[2,1],[3,1],1,'9'], #H-I
[[3,3],[3,1],2,'10'] #G-I
]
m=np.array(graphTable)
np.save('demo.npy',m)
- 读取:先从.npy文件中读出np.array,再转为list格式
a=np.load('demo.npy')
graphTable=a.tolist()
- 保存为.npy会保留列表原有的内容格式,使用更为方便,
但保存为.txt格式同样的数据占用空间会更小。
二、Python 简写操作(for、if简写、匿名函数)
1、两层for循环
- 格式
[对i的操作 for 单个元素 in 列表 for i in 单个元素]
- 例子
y_list = ['assss','dvv']
[print(i) for y in y_list for i in y]
得到结果:a s s s s d v v
2、两层列表for 循环遍历简写
- 例子
k = [[1, 2, 3, 4, 5], [5, 4, 3, 2, 1], [9, 8, 7, 6]]
j = [[j * 10 for j in i] for i in k]
print(j)
l = [[j*10 for i in k for j in i]]
print(l)
- 结果
[[10, 20, 30, 40, 50], [50, 40, 30, 20, 10], [90, 80, 70, 60]]
[[10, 20, 30, 40, 50, 50, 40, 30, 20, 10, 90, 80, 70, 60]]
2、if 简写
- 格式
True的逻辑 if 条件 else False的逻辑
- 例子
y = 0
x = y+3 if y > 3 else y-1
此时 x = -1
因为 y = 0 ,所以判断 y>3 时执行了 False的逻辑:y-1,所以x的值为 -1
3、for 与 if 的结合简写
- 模板
[判断为True的i的操作 for i in 列表 if i的判断 ]
- 例子
x = [1,2,3,4,5,6,7]
[print(i) for i in x if i > 3 ]
它会输出:4 5 6 7
注:使用简写的方式无法对 if 判断为 False 的对象执行操作。
4、匿名函数lambda
- 格式
lambda 参数: 表达式
- 参数
x = 3
(lambda k: k+3)(x)
输出 6
这是一个比较简单的匿名函数表达式
- 一般匿名函数会结合很多其他函数,作为传递参数的作用。比如:
比如:map()配合匿名函数
map(函数名,列表) 这相当于对列表中的每个元素执行这个函数的操作,比如:
list(map(lambda x: x * 2, [1, 2, 3, 4, 5]))
输出: [2, 4, 6, 8, 10]
三、pandas的操作
1、创建dataframe
- 创建一个新的dataframe
df=pd.DataFrame(columns={"a":"","b":"","c":""},index=[0])
- out
a c b
0 NaN NaN NaN
- 用list的数据创建dataframe:
a = [['2', '1.2', '4.2'], ['0', '10', '0.3'], ['1', '5', '0']]
df = pd.DataFrame(a, columns=['one', 'two', 'three'])
print df
- out
one two three
0 2 1.2 4.2
1 0 10 0.3
2 1 5 0
参考
保存列表
Python 简写操作(for、if简写、匿名函数)
python:pandas中dataframe的基本用法汇总