繁体   English   中英

如何使用Python在Excel工作表(.xlsx)的列中保存浮点变量

[英]How to save float variables in columns of excel sheet (.xlsx) using python

我是Python编程语言的新手。 我的目标是将输出变量(即a,b和c)保存(或写入)在excel文件表(.xlsx格式)中(我尝试了以下python代码),用于写入输出变量。 我想要这样的输出excel文件(.xlsx): 请参阅excel文件的图像 该代码可与.csv文件正常工作,但不适用于.xlsx文件

以下是我要实现的:

  1. 我想将每个变量(a,b,c)保存在Excel工作表的不同列中
  2. 我想给excel工作表中的每一列命名(因为将在每列中存储a,b,c,三列的名称分别为Value,Cross-range和A-value)

有人可以帮我吗? 有什么建议或帮助吗?

n=10 
for i in range(n-1):
    a[i+1] = a[i]-2
    b=a/10
    c=b**2
    file = open("sample-test.xlsx","w")
    for i in range(len(y)):
    iter = "%.3f,%.3f,%.5f\n"%(a[i],b[i],c[i])
    print (iter)
    file.write(iter)
    file.close()

Excel文件是二进制格式(从技术上来说是.zip文件),而不是像.csv文件那样的简单文本格式。 如果要写入.xlsx文件,则有许多具有该功能的软件包。

我的首选是xlsxwriter 它允许您创建一个新的Excel工作簿,向其中写入数据,并添加所需的任何格式。 我不确定您的for循环在做什么,因此我对其进行了修改,使其可以在本示例中使用

import xlsxwriter

wb = xlsxwriter.Workbook('sample-test.xlsx')
ws = wb.add_worksheet('my sheet')

# write the header in row 0, which is Excel row 1
ws.write_row(0, 0, ['chickens', 'ducks', 'mice'])

n = 10
a = 98
for i in range(n-1):
    a = a * i - 2
    b=a/10
    c=b**2
    ws.write_row(i+1, 0, [a,b,c])

wb.close()
from openpyxl import Workbook
wb = Workbook() 
# grab the active worksheet
ws = wb.active 
# Data can be assigned directly to cells         
ws['A1'] = 42.2
# Rows can also be append
ws.append([1, 2, 3])

# Save the file
wb.save("sample.xlsx")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM