python打开文件并写入内容,需要转化下
with open ('json','wb+') as f:
f.write(str(df.head()).encode('utf-8'))
python 输出结果转为list输出
def host(host):
import subprocess
cmd = "lsblk | grep disk |awk '{print $1}'"
a = subprocess.getoutput(f"ssh {host} {cmd} ")
print(str(a).split('\n'))
host('master')
python 定义类并查看服务器硬件信息:
class ha(object):
def __init__(self,hostname):
self.hostname = hostname
def mem(self):
import subprocess
cmd = "dmidecode -t17 | grep -i serial | grep -iv no | awk '{print $3}'"
a = subprocess.getoutput(f"ssh {self.hostname} {cmd} ")
print(str(a).split('\n'))
h = ha('master').mem()
ha('master').mem()
=====================================================================
class ha(object):
def __init__(self,hostname):
self.hostname = hostname
def mem_info(self):
import subprocess
mem_serial = "dmidecode -t17 | grep -i serial | grep -iv no | awk '{print $3}'"
mem_slot = "dmidecode -t 17 |grep Locator | grep -Ev 'Bank Locator|NO DIMM' |awk '{print $2}'"
mem_size = "dmidecode -t 17 | grep -i size | grep -vi no | awk '{print $2}' | awk '{sum+=$1};END {print sum}'"
a = subprocess.getoutput(f"ssh {self.hostname} {mem_serial} ")
b= subprocess.getoutput(f"ssh {self.hostname} {mem_slot} ")
c = subprocess.getoutput(f"ssh {self.hostname} {mem_size} ")
print('SIZE: {}G\nSERIAL: {}\nSLOT: {}'.format(c,str(a).split('\n'),str(b).split('\n')))
ha('master').mem_info()
=======================================================================
def disk_info():
import subprocess
diskc = "lsblk | grep disk -c"
ssd_disk_size = "lsblk |grep disk | grep -E 'sda|sdb|sdc' | awk '{print $4}' | awk '{sum+=$1};END {print sum}'"
hdd_disk_size = "lsblk |grep disk | grep -vE 'sda|sdb|sdc' | awk '{print $4}' | awk '{sum+=$1};END {print sum}'"
disk_sn = "lsblk -o name,MAJ:MIN,RM,size,type,serial"
a = subprocess.getoutput(f"{diskc} ")
b = subprocess.getoutput(f"{ssd_disk_size} ")
c = subprocess.getoutput(f"{hdd_disk_size} ")
d = subprocess.getoutput(f"{disk_sn} ")
print('DISKC: {}\nssd_disk_size: {}G\nhdd_disk_size: {}T\ndisk_sn" {}'.format(a, str(b).split('\n'), str(c).split('\n'),d))
disk_info()
=====================================================================
def disk():
import subprocess
cmd = """
na=`lsblk | grep disk | awk '{print $1}'`
for i in ${na[@]}
do
Current_Pending_Sector_valur=`smartctl -a /dev/$i | grep Current_Pending_Sector|awk '{print $6}'`
if [[ $Current_Pending_Sector_valur -lt 80 ]] ;then
echo $i is healthy
else
echo $i is unhealthy
fi
done
"""
a = subprocess.getoutput(f"{
cmd} ")
print('disk_healthy_info:{}'.format(a))
disk()
python 脚本参数执行
def write(filename,context):
with open(filename,'wb+') as f :
f.write(str(context).encode('utf-8'))
if __name__ == '__main__':
import argparse
import sys
# 1. 定义命令行解析器对象
parser = argparse.ArgumentParser(description='Demo of argparse')
# 2. 添加命令行参数
parser.add_argument('-f','--file', help='filename' )
parser.add_argument('-c','--context', help='context' )
args = parser.parse_args(None if sys.argv[1:] else ['-h'])
# 3. 从命令行中结构化解析参数
file = args.file
context = args.context
write(file,context)
Python实现将Excel转换为json的方法示例
准备工作
在开始之前,需要安装以下库:
Pandas:可以帮助读取 Excel 文件。
json:将 Pandas 数据转换为 JSON。
首先需要在命令行中执行以下代码安装 pandas 和 json 库:
pip install pandas
pip install json
示例 1:将Excel表中的一行数据转换为JSON格式
用 Pandas 读取 Excel 文件,并将其中一行数据转为 JSON 格式的代码如下:
import pandas as pd
import json
# 读取Excel文件的第一行作为列名,读取第二行中的数据
data = pd.read_excel('data.xlsx', header=0, skiprows=[1], nrows=1)
# 转换为JSON格式
result = json.loads(data.to_json(orient='records'))
# 输出结果
print(result)
解释一下代码:
pd.read_excel 用于读取 Excel 文件,
header=0 表示第一行是列名,
skiprows=[1] 表示跳过第二行,
nrows=1 表示读取一行数据;
data.to_json 可以将 Pandas 数据转换为 JSON 格式,
orient='records' 表示将每一行数据转换为一个 JSON 对象,组成一个数组返回。
示例 2:将Excel表中的多行数据转换为JSON格式
将整个 Excel 表格中的数据转为 JSON 格式的代码如下:
import pandas as pd
import json
# 读取Excel文件的第一行作为列名
data = pd.read_excel('data.xlsx', header=0)
# 转换为JSON格式
result = json.loads(data.to_json(orient='records'))
# 输出结果
print(result)
解释一下代码:
pd.read_excel 用于读取 Excel 文件,
header=0 表示第一行是列名;
data.to_json 可以将 Pandas 数据转换为 JSON 格式,
orient='records' 表示将每一行数据转换为一个 JSON 对象,组成一个数组返回。
总结
以上就是将 Excel 转为 JSON 的 Python 示例。使用 Pandas 可以轻松地将 Excel 转换为各种格式的数据,同时 Pandas 还支持大量的数据处理操作,非常适合数据分析和处理。
python关于excel多个sheet的导入导出方式
导入所需模块
我们将使用pandas和xlrd模块来处理Excel文件。其中pandas用于数据处理,xlrd用于读取Excel文件数据。
import pandas as pd
import xlrd
从Excel文件中读取多个sheet
我们可以使用Pandas提供的read_excel()函数来读取Excel文件。该函数可以读取一个Excel文件中的一个或多个sheet。
excel_file = pd.ExcelFile('example.xlsx') # 读取Excel文件
sheet_names = excel_file.sheet_names # 获取所有sheet的名称
for sheet_name in sheet_names:
df = pd.read_excel(excel_file, sheet_name=sheet_name)
print('Sheet Name:', sheet_name)
print(df.head()) # 取前五行打印出来
上述代码中,我们首先使用ExcelFile()方法读取Excel文件。
然后,通过sheet_names变量获取所有sheet的名称。
接着,使用for循环遍历所有sheet,并通过read_excel()方法读取每个sheet中的数据,
最后将结果打印出来。
将多个DataFrame写入Excel文件
我们可以使用Pandas提供的ExcelWriter()方法来将多个DataFrame写入同一个Excel文件的不同sheet中。
df1 = pd.read_excel('example.xlsx', sheet_name='Sheet1')
df2 = pd.read_excel('example.xlsx', sheet_name='Sheet2')
with pd.ExcelWriter('output.xlsx') as writer: # 创建ExcelWriter对象
df1.to_excel(writer, sheet_name='Sheet1_new') # 将df1写入新的sheet
df2.to_excel(writer, sheet_name='Sheet2_new') # 将df2写入新的sheet
print('写入Excel文件成功!')
上述代码中,我们首先使用read_excel()方法读取Excel文件中的两个sheet。
然后,使用ExcelWriter()方法创建一个新的Excel文件对象。
接着,使用to_excel()方法将两个DataFrame分别写入不同的sheet。
最后,使用print()函数输出写入Excel文件成功的信息。
Python读取txt内容写入xls格式excel中的方法
安装Python相关的库,包括openpyxl、pandas、xlrd和xlwt。可以使用命令:
pip install openpyxl pandas xlrd xlwt
读取txt文件
首先需要打开txt文件,并将其中的数据读取出来。可以使用Python自带的open函数打开文件,然后使用readlines方法读取所有内容。示例代码:
filename = 'data.txt'
with open(filename, 'r') as f:
data = f.readlines()
处理数据
读取到的数据一般为字符串格式,需要进行处理,将其转化为列表或二维数组。示例代码:
content = []
for line in data:
line = line.strip().split('\t')
content.append(line)
写入Excel文件
使用pandas库中的DataFrame类和to_excel方法,可以很方便地将数据写入Excel文件。示例代码:
import pandas as pd
df = pd.DataFrame(content, columns=['Name', 'Age', 'Gender']) # 创建DataFrame对象
writer = pd.ExcelWriter('data.xlsx') # 创建ExcelWriter对象
df.to_excel(writer, sheet_name='Sheet1', index=False) # 将数据写入Excel文件中的Sheet1工作表
writer.save() # 保存Excel文件
完整示例代码
import pandas as pd
filename = 'data.txt'
with open(filename, 'r') as f:
data = f.readlines()
content = []
for line in data:
line = line.strip().split('\t')
content.append(line)
df = pd.DataFrame(content, columns=['Name', 'Age', 'Gender']) # 创建DataFrame对象
writer = pd.ExcelWriter('data.xlsx') # 创建ExcelWriter对象
df.to_excel(writer, sheet_name='Sheet1', index=False) # 将数据写入Excel文件中的Sheet1工作表
writer.save() # 保存Excel文件
示例说明
以读取以下数据为例:
Tom 23 Male
Jerry 22 Female
Bob 26 Male
写入Excel后的结果如下图所示:
另外还可以自定义写入Excel文件的Sheet名。示例代码:
df.to_excel(writer, sheet_name='Students', index=False)
# 将数据写入Excel文件中的Students工作表
写入Excel后的结果如下图所示:
Python将多个excel表格合并为一个表格
前置条件
在开始之前,请确保你已经安装了以下库:
pandas
openpyxl
你可以通过pip命令进行安装:
pip install pandas
pip install openpyxl
实现步骤
第一步:导入所需库
在Pyhton文件中,首先需要导入所需的库。本次需要使用到pandas和openpyxl库,可以按以下方式进行导入:
import pandas as pd
import openpyxl
第二步:读取excel表格并合并
接下来需要读取所有需要合并的excel表格,并将其合并为一个。
首先创建一个空的DataFrame。
df = pd.DataFrame()
然后使用for循环,遍历所有需要合并的表格。在循环中,使用pandas库的read_excel()方法读取每个表格,并通过concat()方法将其合并到之前创建的空DataFrame中。
for file_name in file_list:
data = pd.read_excel(file_name)
df = pd.concat([df, data])
其中file_list是需要合并的所有excel表格的文件名列表。
第三步:将合并后的数据导出为新的excel表格
最后,需要将合并后的数据导出为一个新的excel表格。
在导出之前,可以通过openpyxl库创建一个新的excel文件,并指定文件名和表格名。
workbook = openpyxl.Workbook()
worksheet = workbook.active
worksheet.title = "合并表格"
接下来,可以使用pandas库的to_excel()方法将合并后的数据写入到新的excel表格中。
df.to_excel(excel_writer=workbook, sheet_name="合并表格", index=False)
最后,需要保存并关闭excel文件。
workbook.save("merged_file.xlsx")
workbook.close()
至此,多个excel表格已经顺利合并为一个表格,并导出为一个新的excel文件。
示例说明
以下是两个示例,分别演示了合并两个和三个excel表格的过程。
示例一:合并两个excel表格
假设需要合并的两个excel表格分别为data1.xlsx和data2.xlsx。
首先,需要将两个文件名存储到一个list中:
file_list = ["data1.xlsx", "data2.xlsx"]
接下来,按照上述步骤开展工作即可。
示例二:合并三个excel表格
假设需要合并的三个excel表格分别为data1.xlsx、data2.xlsx和data3.xlsx。
首先,需要将三个文件名存储到一个list中:
file_list = ["data1.xlsx", "data2.xlsx", "data3.xlsx"]
接下来,按照上述步骤开展工作即可。
总体而言,合并多个excel表格的步骤是相同的。只需要将需要合并的文件名存储到一个list中,然后遍历这个list并将每个表格的数据合并到一个DataFrame中即可。最后,将合并后的结果写入到一个新的excel表格中即可。
参考链接:
https://pythonjishu.com/robotic-process-automation/
添加链接描述
Python实现将Excel转换为json的方法示例
python关于excel多个sheet的导入导出方式