如何使Python脚本及其模块自包含?

2024-10-06 07:44:11 发布

您现在位置:Python中文网/ 问答频道 /正文

编程新手这里有一个开发管理问题。在

我正在Windows7中编写一个非常简单的Python脚本,它将被复制到Excel文件的目录中,按文件名对其进行排序,排除目录中的脚本文件,然后按顺序处理它们。在

我在系统上安装了python2.7和3.4,它们分别位于C:\Python27和C:\Python34中。在

我已经编写了我很满意的排序部分,但是我必须安装natsort模块,它本应该只与2.7兼容,但是被pip自动安装到我的C:\Python34中。。。而不是目录。。。我必须以“C:\Python34\python”的形式运行脚本tvcrunch.py“没有一个重要的错误:没有名为natsort的模块。在

现在我需要安装xlrd和xlwt包来处理我的Excel文件,它们安装到C:\Python27中。。。目录,尽管与python3.2+兼容。在

我想你们现在都明白我的难题了。我希望这个脚本足够便携,这样我可以把它放到任何计算机上,让它运行,而不需要重新安装所有这些模块和软件包。我该怎么做?以下脚本:

import os
from os import listdir
import natsort

somedir = r'.'
fileList = []

def list_files(path):
    for item in os.listdir(path):
        if os.path.isfile(os.path.join(path, item)):
            if item != r'tvcrunch.py':
                fileList.append(item)
    return fileList

list_files(somedir)
natsort.natsorted(fileList, key=lambda y: y.lower())
print(fileList)

Tags: 模块文件pathimport目录脚本排序os