lr168lr 发表于 2024-2-3 13:05:12

求大佬解惑,调用python代码,运行报错


import win.ui;
/*DSG{{*/
mainForm = win.form(text="汇总表";right=540;bottom=358)
mainForm.add(
button={cls="button";text="...";left=374;top=142;right=422;bottom=171;z=4};
button2={cls="button";text="开始填制";left=439;top=140;right=520;bottom=254;z=5};
edit={cls="edit";text="Edit";left=161;top=142;right=351;bottom=171;edge=1;z=3};
static={cls="static";text="成绩汇总";left=184;top=77;right=339;bottom=120;font=LOGFONT(h=-24);transparent=1;z=1};
static2={cls="static";text="请选择文件:";left=54;top=144;right=143;bottom=172;font=LOGFONT(h=-14);transparent=1;z=2}
)
/*}}*/

import fsys.dlg
import py3
//import py3.pip
import console
//py3.pip("install","pandas")

var path = 0
var wenjian = 0
mainForm.button.oncommand = function(id,event){
      path = fsys.dlg.openEx("所有文件|*.*|")//读取文件,并保存文件路径的数组

      wenjian = path//获取数组第一个元素
      if(wenjian){
                mainForm.edit.text = wenjian//将编辑框内的内容设置为获取到的文件路径
      }
}

mainForm.button2.oncommand = function(id,event){
      py3.exec(code);
      var pd = py3.import("pandas")

//读取第一个 Excel 表(包含键值对)
kv_df = pd.read_excel(wenjian)

//读取第二个 Excel 表
target_df = pd.read_excel('F:\\全员营销\\12月份\\成绩汇总.xlsx')

//遍历第一个表格中的键值对,将值填入第二个表格
for index, row in kv_df.iterrows():
    key = row['姓名']//替换成你的第一个表格中的键的列名
    value = row['成绩']//替换成你的第一个表格中的值的列名

   //根据键在第二个表格中查找对应的位置,然后填入值
    target_df.loc == key,"成绩"] = value//替换成你的第二个表格中的键和值的列名

   //输出填充后的第二个表格
print(target_df)

//将结果保存到新的 Excel 文件
target_df.to_excel('filled_target_table.xlsx', index=False)
}

mainForm.show();
return win.loopMessage();


———————————————————————————————————————————————————
提示49行错误



在vscode中单独运行49行所在代码块,可以正常运行,并获得结果


善小而为_ 发表于 2024-2-5 16:09:38

aardio调用python有范例

善小而为_ 发表于 2024-2-6 11:31:38

mainForm.button2.oncommand = function(id,event){
      
        var pd = py3.import("pandas")

        var code = /***

//读取第一个 Excel 表(包含键值对)
kv_df = pd.read_excel(wenjian)

//读取第二个 Excel 表
target_df = pd.read_excel('F:\\全员营销\\12月份\\成绩汇总.xlsx')

//遍历第一个表格中的键值对,将值填入第二个表格
for index, row in kv_df.iterrows():
    key = row['姓名']//替换成你的第一个表格中的键的列名
    value = row['成绩']//替换成你的第一个表格中的值的列名

   //根据键在第二个表格中查找对应的位置,然后填入值
    target_df.loc == key,"成绩"] = value//替换成你的第二个表格中的键和值的列名

   //输出填充后的第二个表格
print(target_df)

//将结果保存到新的 Excel 文件
target_df.to_excel('filled_target_table.xlsx', index=False)

        ***/
        py3.exec(code);

}
页: [1]
查看完整版本: 求大佬解惑,调用python代码,运行报错