一开始想到要用python解决来「偷懒」,完全是由于一个临时性的任务。
MISSION:检查某些IP某些端口的连通性。
这并不难嘛,立马打开n个cmd,哼哧哼哧的一个个telnet。几组之后,便感肌肉都僵硬起来。机智如我把语句用excel先 「A & B & C」 合并起来,再复制粘贴,虽然省了点劲,离完成任务还遥遥无期肿么破(= ̄ ρ ̄=)
「这不科学!」为了进一步省事,便打起了凭5毛编程技术写个自动测试程序。网上一搜,现在的语言比起当年苦哈哈被C的「++i」「i++」支配的恐惧,简直不要太容易上手!调用模块瞬间搞定。
以上是废话分割线。
日常工作中经常会要周期性地处理一些报表,数据繁多,但格式要求变化不大,特别适合套路化。总结几个小白级常用的tips,以使工作更有(能)效(偷)率(懒)。
文件读取和保存
1、路径
在学习ng新开的neural networks and deep learning课程时,遇到的一个常见的简单import问题。
import Ir_utils
Traceback (most recent call last):
File "", line 1, in
import Ir_utils
ImportError: No module named 'Ir_utils'
可以利用「os」模块重新设定路径,将所需导入的文件放入到指定文件夹即可。
import os
os.chdir('your file path')
2、读取
csv,txt格式
# 使用 pandas 模块
import pandas as pd
df = pd.read_csv('your file name')
# 中文读取问题「encoding='gb2312'」,大文件分批读取「iterator=True」等
xlsx格式,多个sheet
# 使用 openpyxl 模块
import openpyxl
wb = openpyxl.load_workbook('your file name') # 读取整个工作表
sheets = wb.get_sheet_names() # 读取每个表的名字
df1 = wb.get_sheet_by_name(sheets[0]) # 读取第一个表
补充
使用pandas可以更方便的读取xlsx文件
import pandas as pd
df = pd.read_excel('your_file_name', 'sheet_name')
3、保存
to_csv('file name') # 保存为csv格式
wb.save('file name') # 在原表保存
# 保存到新表的不同sheet
new = pd.ExcelWriter('file name')
df1.to_excel(new, sheet_name='sheet1')
df2.to_excel(new, sheet_name='sheet2')
文档的读取还可以使用readlines()或者连接sql数据库的方式,不过日常接触的文档多是单独的excel或txt文件,个人感觉pandas读取简便快捷,DataFrame结构也易于后续操作处理。
TBC