首页 > 解决方案 > 如何使用 Python 导出可执行文件的相对路径

问题描述

我已使用 pyinstaller 将 .py 文件转换为 exe。我的代码从存储在特定文件夹中的 Excel 表中获取数据,并使用它来更新 JIRA(网页)中的某些字段。

目前我正在给出 excel 表的完整路径(c:\desktop\Filename.xlsx)。我不希望用户输入 excel 文件的完整位置,而只提供文件名。为此,我正在考虑将可执行文件和 excel 文件保存在同一位置。我想要的是获取可执行文件的基本位置,然后在该位置附加文件名以到达 excel 文件位置。

尝试过文件但它不起作用?给出错误

下面的代码写在可执行文件中

import webbrowser as wb
import os
import xlrd as x
import time
import pyautogui as p

name = os.path.dirname(__file__)
val=input("Enter worksheet name that contains Issue ID and Dev Delivery Date details:\n")
filename = os.path.join(name,'val')
my_excel=x.open_workbook(filename)
sheet = my_excel.sheet_by_index(0)
j=0
if sheet.nrows==0:
    print("\nYou have not provided any data. Kindly provide Issue ID in column A and Dev Delivery Date as a character in column B [Format:26/Sep/19]")
else:
    if j<=i:
        for i in range(sheet.nrows):
            loc="https://jira.cvent.com/browse/"+sheet.cell_value(i,0)
            wb.open_new(loc)
            time.sleep(5)
            p.moveTo(1200,700);
            time.sleep(2)
            p.press('.')
            time.sleep(2)
            p.typewrite("Dev Delivery")
            time.sleep(2)
            p.press("enter")
            p.press("backspace")
            p.typewrite(sheet.cell_value(i,1))
            p.press("enter")
            j=j+1
        else:
            os.system("taskkill /im chrome.exe /f")

我不想提供完整路径,而是只想提供文件名

标签: pythonpython-3.xrelative-path

解决方案


你在这里有一个错误“filename = os.path.join(name,'val')”,因为你把它当作 str,而不是作为属性,试试这个:

filename = os.path.join(name,val)

推荐阅读