我一直在通过创建一些程序来试验python。事情是,我不知道如何导入默认python目录中的东西。
答案 0 :(得分:0)
如果您只需要读入文件而不导入模块,那么文档就会广泛介绍。
https://docs.python.org/2/tutorial/inputoutput.html#reading-and-writing-files
特别是对于Windows文件系统,您需要执行以下操作之一:
1。)使用forwardslashes与反斜杠。这适用于大多数操作系统。
f = open("c:/somedir/somefile.txt", "r")
2。)使用原始字符串。
f = open(r"c:\somedir\somefile.txt", "r")
3。)逃避反斜杠。
f = open("c:\\somedir\\somefile.txt", "r")
如果您需要从程序目录之外导入要在程序中使用的模块,可以使用以下信息。
Python查看sys.path以查看该模块是否存在,如果是,则导入。如果文件/模块所在的路径不在sys.path中,Python将引发ImportError。您可以使用sys模块以编程方式更新路径。
import sys
dir = "path to mymodule"
if dir not in sys.path:
sys.path.append(dir)
import mymodule
您可以使用以下方法检查当前的sys.path:
print(sys.path)
示例:
>>> print(sys.path)
['', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python34.zip', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/plat-darwin', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/lib-dynload', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages']
>>> sys.path.append("/Users/ddrummond/pymodules")
>>> print(sys.path)
['', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python34.zip', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/plat-darwin', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/lib-dynload', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages', '/Users/ddrummond/pymodules']
>>>
你可以看到sys.path现在包含'/ Users / ddrummond / pymodules'。
答案 1 :(得分:0)
行 所以我做了一些繁重的研究,结论是 如果你想访问保存在不同位置的文件 使用 f = open('E:/somedir/somefile.txt','r')
r = f.read()
注意:不要使用'\'我出错了。我们的系统地址使用'\'所以要小心