python 如何处理linux返回的字体和颜色字符
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 如何处理linux返回的字体和颜色字符相关的知识,希望对你有一定的参考价值。
ssh模块paramiko resp = ssh_switch.recv(9999)获取linux执行命令的结果,>>> print (resp)
b'ls -l\r\ntotal 23712\r\n-rw------- 1 root root 51 May 19 01:56 \x1b[0m\x1b[00m.Xauthority\x1b[0m\r\n-rw------- 1 root root 2994 May 23 22:03 \x1b[00m.bash_history\x1b[0m\r\ndrwxr-xr-x 2 root root 4096 May 17 18:42 \x1b[01;34m.config\x1b[0m\r\n-rw-r--r-- 1 root root 1332 Nov 24 2005 \x1b[00m.exrc\x1b[0m\r\ndrwx------ 2 root root 4096 May 17 17:48 \x1b[01;34m.gnupg\x1b[0m\r\ndrwxr-xr-x 2 root root 4096 May 17 18:41 \x1b[01;34m.kbd\x1b[0m\r\ndrwx------ 2 root root 4096 May 18 10:39 \x1b[01;34m.ssh\x1b[0m\r\n-rw------- 1 root root 5468 May 23 20:20 \x1b[00m.viminfo\x1b[0m\r\n-rw-r--r-- 1 root root 48075 May 17 23:56 \x1b[00mautoinst.xml\x1b[0m\r\ndrwxr-xr-x 2 root root 4096 May 5 2010 \x1b[01;34mbin\x1b[0m\r\ndrwxr-xr-x 5 root root 4096 May 17 17:13 \x1b[01;34minst-sys\x1b[0m\r\n-rw-r--r-- 1 root root 22358905 May 19 01:16 \x1b[00mlistener(10.219.12.29).log\x1b[0m\r\n-rw-r--r-- 1 root root 1787759 May 19 01:19 \x1b[00mlistener(10.219.12.29)_new.log\x1b[0m\r\n-rwxr-xr-x 1 root root 2521 May 18 10:34 \x1b[00;32moracle_set.sh\x1b[0m\r\n\x1b[m\x1b[1moracle2:~ # \x1b[m\x0f'
带有linux 的目录颜色的字符如何qu'diao
使用Python如何处理csv文件?
本文和大家分享的主要是使用python语言处理csv文件相关内容,一起来看看吧,希望对大家学习python开发有所帮助。
CSV(Comma-Separated Values)即逗号分隔值,可以用Excel打开查看。由于是纯文本,任何编辑器也都可打开。与Excel文件不同,CSV文件中:
· 值没有类型,所有值都是字符串
· 不能指定字体颜色等样式
· 不能指定单元格的宽高,不能合并单元格
· 没有多个工作表
· 不能嵌入图像图表
在CSV文件中,以 , 作为分隔符,分隔两个单元格。像这样 a,,c 表示单元格 a 和单元格 c之间有个空白的单元格。依此类推。
不是每个逗号都表示单元格之间的分界。所以即使CSV是纯文本文件,也坚持使用专门的模块进行处理。Python内置了csv模块。先看看一个简单的例子。
从CSV文件中读取数据
import csv
filename = ’F:/Jupyter Notebook/matplotlib_pygal_csv_json/sitka_weather_2014.csv’withopen(filename) as f:
reader = csv.reader(f)
print(list(reader))
data 不能直接打印,list(data)最外层是list,里层的每一行数据都在一个list中,有点像这样
[[’name’, ’age’], [’Bob’, ’14’], [’Tom’, ’23’], ...]
于是我们可以这样访问到Bob的年龄 reader[1][1] , 在for循环中遍历如下
import csv
filename = ’F:/Jupyter Notebook/matplotlib_pygal_csv_json/sitka_weather_2014.csv’withopen(filename) as f:
reader = csv.reader(f)
for row in reader:
# 行号从1开始
print(reader.line_num, row)
要注意的是,reader只能被遍历一次。由于reader是可迭代对象,可以使用 next 方法一次获取一行。
import csv
filename = ’F:/Jupyter Notebook/matplotlib_pygal_csv_json/sitka_weather_2014.csv’with open(filename) as f:
reader = csv.reader(f)
# 读取一行,下面的reader中已经没有该行了
head_row = next(reader)
for row in reader:
# 行号从2开始
print(reader.line_num, row)
写数据到csv文件中
有reader可以读取,当然也有writer可以写入。一次写入一行,一次写入多行都可以。
import csv
# 使用数字和字符串的数字都可以
datas = [[’name’, ’age’],
[’Bob’, 14],
[’Tom’, 23],
[’Jerry’, ’18’]]
with open(’example.csv’, ’w’, newline=’’) as f:
writer = csv.writer(f)
for row in datas:
writer.writerow(row)
# 还可以写入多行
writer.writerows(datas)
如果不指定 newline=’’ ,则每写入一行将有一空行被写入。上面的代码生成如下内容。
name,age
Bob,14
Tom,23
Jerry,18name,age
Bob,14
Tom,23
Jerry,18
DictReader和DictWriter对象
使用DictReader可以像操作字典那样操作数据,把表的第一行(一般是标头)作为key。使用key可访问行中那个key对应的数据。
import csv
filename = ’F:/Jupyter Notebook/matplotlib_pygal_csv_json/sitka_weather_2014.csv’with open(filename) as f:
reader = csv.DictReader(f)
for row in reader:
# Max TemperatureF是表第一行的某个数据,作为key
max_temp = row[’Max TemperatureF’]
print(max_temp)
使用DictWriter类,可以写入字典形式的数据,同样键也是标头(表格第一行)。
import csv
headers = [’name’, ’age’]
datas = [{’name’:’Bob’, ’age’:23},
{’name’:’Jerry’, ’age’:44},
{’name’:’Tom’, ’age’:15}
]
with open(’example.csv’, ’w’, newline=’’) as f:
# 标头在这里传入,作为第一行数据
writer = csv.DictWriter(f, headers)
writer.writeheader()
for row in datas:
writer.writerow(row)
# 还可以写入多行
writer.writerows(datas)
来源:博客园
以上是关于python 如何处理linux返回的字体和颜色字符的主要内容,如果未能解决你的问题,请参考以下文章