lxq2013 发表于 2021-12-4 22:35:21

pyinstaller打包生成exe文件

我尝试用pyinstaller打包生成exe文件,但是却总是报tuple index out of range,python版本3.10,installers版本是4.7的,也尝试过5.0(dep)版本,但还是一样的结果。求解惑,万分感激

suchocolate 发表于 2021-12-5 13:43:38

lxq2013 发表于 2021-12-5 12:20
附件是全部的过程,不胜感激

感觉像是python和模块搭配的原因。你用下面这个代码打个包试试报错不:
import os
import pandas as pd

result = []
# d = input('Please input a dir you want to search:')
d = os.getcwd()
for a, _, c in os.walk(d):
    for i in c:
      result.append(f'{a}\\{i}')
s = pd.Series(result)
writer = pd.ExcelWriter("文件路径.xlsx")
s.to_excel(writer)
writer.save()

ba21 发表于 2021-12-4 22:53:35

数组越界,你代码问题 。跟pyinstaller没关系。

z5560636 发表于 2021-12-4 23:45:51

ba21 发表于 2021-12-4 22:53
数组越界,你代码问题 。跟pyinstaller没关系。

老乡招人不???啥都会一点

lxq2013 发表于 2021-12-5 10:10:24

ba21 发表于 2021-12-4 22:53
数组越界,你代码问题 。跟pyinstaller没关系。

可是程序不打包是可以正常用的,那这样应该怎么解决

suchocolate 发表于 2021-12-5 10:16:02

贴代码

lxq2013 发表于 2021-12-5 10:49:31

suchocolate 发表于 2021-12-5 10:16
贴代码

import os
import pandas as pd

def get_file_path(root_path,file_list,dir_list):
    dir_or_files = os.listdir(root_path)
    for dir_file in dir_or_files:
      dir_file_path = os.path.join(root_path,dir_file)
      if os.path.isdir(dir_file_path):
            dir_list.append(dir_file_path)
            get_file_path(dir_file_path,file_list,dir_list)
      else:
            file_list.append(dir_file_path)

file_list = []
dir_list = []
root_path = os.getcwd()
get_file_path(os.getcwd(),file_list,dir_list)
s = pd.Series(file_list)
writer = pd.ExcelWriter("文件路径.xlsx")
s.to_excel(writer)
writer.save()

lxq2013 发表于 2021-12-5 11:30:59

lxq2013 发表于 2021-12-5 10:49
import os
import pandas as pd



后续我是想再整理文件重命名,但是打包成exe还是同样的问题
import pandas as pd
import os

df = pd.read_excel("文件路径.xlsx")
for row in df.itertuples():
    os.rename(row,row)

suchocolate 发表于 2021-12-5 12:09:13

lxq2013 发表于 2021-12-5 10:49
import os
import pandas as pd



我python3.6用你的代码打包没有报错。能贴一下你的全部报错代码吗?

lxq2013 发表于 2021-12-5 12:19:36

附件是全部的过程,不胜感激

lxq2013 发表于 2021-12-5 12:20:46

suchocolate 发表于 2021-12-5 12:09
我python3.6用你的代码打包没有报错。能贴一下你的全部报错代码吗?

附件是全部的过程,不胜感激

lxq2013 发表于 2021-12-5 13:55:24

suchocolate 发表于 2021-12-5 13:43
感觉像是python和模块搭配的原因。你用下面这个代码打个包试试报错不:

还是不行,那我换python3.6试试吧

lxq2013 发表于 2021-12-5 19:45:31

应该就是python3.10和模块搭配的原因,我换成3.8版本就没问题了
页: [1]
查看完整版本: pyinstaller打包生成exe文件