Python中文
首页
教程
问答
标签
搜索
登录
注册
如何将python脚本作为可执行文件运行并保持对其周围文件的访问?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个python程序“艾尔弗雷德.py我想通过点击一个图标或在终端中键入“Alfred”来运行。它连接到一个数据库文件,并在请求时拉入Excel文件。当我试图通过单击来运行它时,得到的结果如下:</p> <pre><code>mcaay:~ mcaay$ /Users/mcaay/Documents/Moje\ Dokumenty/MANTA/Alfred/Alfred.desktop ; exit; /Users/mcaay/Documents/Moje Dokumenty/MANTA/Alfred/Alfred.desktop: line 1: [Desktop: command not found Traceback (most recent call last): File "/Users/mcaay/Documents/Moje Dokumenty/MANTA/Alfred/Alfred.py", line 59, in <module> AND Usterka IS NOT NULL;""") sqlite3.OperationalError: no such table: repairs logout Saving session... ...copying shared history... ...saving history...truncating history files... ...completed. [Process completed] </code></pre> <p>这条线:</p> <pre><code>sqlite3.OperationalError: no such table: repairs </code></pre> <p>意思是艾尔弗雷德.py找不到.db文件,创建了它,但它是空的,因此没有名为“repairs”的表。此.db文件与艾尔弗雷德.py. 你知道吗</p> <p>我之前所做的:</p> <ul> <li>添加“#”!/usr/bin/env python3“作为艾尔弗雷德.py你知道吗</li> <li>键入“chmod+x/Users/mcay/Documents/Moje\Dokumenty/MANTA/Alfred/艾尔弗雷德.py“在终端中使其可执行</li> <li>将“export PATH=$PATH:/Users/mcaay/Documents/Moje\Dokumenty/MANTA/Alfred/”添加到我的.bash\u配置文件中艾尔弗雷德.py在航站楼的任何地方都可以买到</li> <li>创建阿尔弗雷德.桌面可单击图标的文件:</li> </ul> <pre><code>[Desktop Entry] Name=Alfred Exec=python3 /Users/mcaay/Documents/Moje\ Dokumenty/MANTA/Alfred/Alfred.py Terminal=true Type=Application </code></pre> <ul> <li>制造阿尔弗雷德.桌面可通过键入“chmod+x/Users/mcay/Documents/Moje\Dokumenty/MANTA/Alfred”执行/阿尔弗雷德.桌面“在候机楼</li> </ul> <p>当我输入终端时“艾尔弗雷德.py“,我得到:</p> <pre><code>mcaay:~ mcaay$ Alfred.py Traceback (most recent call last): File "/Users/mcaay/Documents/Moje Dokumenty/MANTA/Alfred/Alfred.py", line 59, in <module> AND Usterka IS NOT NULL;""") sqlite3.OperationalError: no such table: repairs </code></pre> <p>所以和“点击”一样阿尔弗雷德.桌面". 如果我只键入“Alfred”,我会得到:</p> <pre><code>mcaay:~ mcaay$ Alfred -bash: Alfred: command not found </code></pre> <p>我只想输入“阿尔弗雷德”工作,我希望它看到数据库和其他文件正确,或者如果点击图标将正常工作,这是可以接受的。我的google Fu让我失望了。你要做什么?你知道吗</p> <p>另外,我注意到在我的主目录(“/Users/mcaay”)中创建了一个数据库文件,好像艾尔弗雷德.py从原始目的地拉到某个临时目的地并在那里执行(其他文件没有拉,所以程序崩溃)。你知道吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我认为它只是在执行它的目录中查找.db文件。您应该使用绝对路径定义一个.db,或者访问脚本的同一目录中的.db文件,您可以使用: <code>os.path.dirname(sys.argv[0])</code></p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何合并多个PDF文件?
9 回答
如何合并多个xarray数据变量及其坐标?
8 回答
如何合并多个列中具有重复值的行
2 回答
如何合并多个唯一id
6 回答
如何合并多个图纸并使用图纸名称的名称重命名列名?
9 回答
如何合并多个字典并添加同一个键的值?(Python)
4 回答
如何合并多个搜索结果文件(pkl)以将它们全部打印在一起?
10 回答
如何合并多个数据帧
4 回答
如何合并多个数据帧并使用Pandas为假人添加列?
4 回答
如何合并多个数据帧并按时间戳排序
6 回答
如何合并多个数据帧的列表并用另一个lis标记每列
1 回答
如何合并多个数据框中的列
4 回答
如何合并多个文件?
4 回答
如何合并多个查询集?
10 回答
如何合并多个绘图?
5 回答
如何合并多个词典
2 回答
如何合并多个输入数据集(数据帧)?
6 回答
如何合并多条记录中拆分的文本行
4 回答
如何合并多索引列datafram
4 回答
如何合并多级(即多索引)数据帧?
10 回答