gpt4 book ai didi

linux - 直接从浏览器运行时 Python 脚本不起作用

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:12:36 28 4
gpt4 key购买 nike

我正在尝试运行这个脚本:

import re, os

def build_pool(cwd):

global xtn_pool, file_pool
xtn, xtn_pool = re.compile('\\.[0-9a-zA-Z]{1,4}$'), []
file_pool = [files for files in os.listdir(cwd) if os.path.isfile(files) and xtn.search(files)]

# Lists all the file extension in the folder
for file in file_pool:
if not xtn_pool.__contains__(xtn.search(file).group()):
xtn_pool.append(xtn.search(file).group())

return xtn_pool.sort(), file_pool


if __name__ == '__main__':
import sys
#if path is given, change working directory to path
if len(sys.argv) >= 2:
os.chdir(sys.argv[1])
build_pool(os.getcwd())
#if no path is given when running, do renaming in current folder
else:
build_pool(os.getcwd())

print('The folder contains the following extensions: ')
for i in range(0, len(xtn_pool)):
print(repr(i+1) + '. ' + xtn_pool[i][1:])

opt = int(input('Which one would you like to replace? '))
xtn_pick = xtn_pool[opt-1]

# Lists all the file with the chosen extension
xtn_file_pool = [file for file in file_pool if file.endswith(xtn_pick)]

print('There are {0} files with the {1} extension.'.format(len(xtn_file_pool), xtn_pick))
xtn_new = input('Input replacement extension: ')

# The actual renaming process
for file in xtn_file_pool:
os.rename(file, file[:-len(xtn_pick)+1] + xtn_new)

直接从我的文件浏览器 (Nautilus),但由于某种原因它不工作。当我从终端 (python3 scriptname.py) 运行它时,它按预期工作正常。但是,当我在 Nautilus 中单击脚本文件,选择“在终端中运行”时,它总是在询问“输入替换扩展名:”后停止。

如何在不使用终端的情况下运行此脚本?

最佳答案

我认为您需要添加一个 shebang ,即您的脚本的第一行应该是 #!/usr/bin/python3

这样终端就知道使用哪个解释器来运行你的脚本。 (此外,如果文件不是可执行文件,则将其设置为可执行文件。)

关于linux - 直接从浏览器运行时 Python 脚本不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2476406/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com