Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python &引用;。目录";在家里可以吗?_Python_Configuration - Fatal编程技术网

Python &引用;。目录";在家里可以吗?

Python &引用;。目录";在家里可以吗?,python,configuration,Python,Configuration,我想将脚本的数据保存到磁盘,以便下次脚本运行时加载。为了简单起见,使用os.path.expanduser(“~”)并在那里保存名为“.myscript\u data”的目录是一个好主意吗?它只需要由脚本读取,为了避免用户的混乱,我希望它被隐藏起来。在用户计算机上放置隐藏的“.files”可以接受吗?是的。(我假设你在linux上,对吗? 另请参见。是的,这是大多数Unix系统的标准做法。为了透明,在第一次创建存储位置时,最好打印一条信息性消息,如Creating directory.dir,以

我想将脚本的数据保存到磁盘,以便下次脚本运行时加载。为了简单起见,使用
os.path.expanduser(“~”)
并在那里保存名为“.myscript\u data”的目录是一个好主意吗?它只需要由脚本读取,为了避免用户的混乱,我希望它被隐藏起来。在用户计算机上放置隐藏的“.files”可以接受吗?

是的。(我假设你在linux上,对吗?

另请参见。

是的,这是大多数Unix系统的标准做法。为了透明,在第一次创建存储位置时,最好打印一条信息性消息,如
Creating directory.dir,以存储脚本状态

如果希望存储大量数据,最好与用户确认位置


这也是应用程序的任何其他配置文件的标准位置。

在Windows上,使用
os.environ['APPDATA']
的子文件夹;在Linux上,
$HOME
下的点文件夹是典型的

您也可以考虑将文件放在一个子目录中:“代码>~/.CONFIG*”,这是一种新兴的配置文件放置标准。另见

不完全相关,但很有趣:


*(编辑)更准确地说,
os.environ.get('XDG_CONFIG_HOME',os.path.expanduser('~/.CONFIG'))
根据XDG规范。

在Linux上,我建议在
os.environ['XDG_CONFIG_HOME']
中创建一个文件或目录(无点文件),在大多数情况下是目录$HOME/.CONFIG。然而,$HOME中的点文件也经常被使用。

我想。文件不会隐藏在下面windows@XavierCombelle我尝试重命名Windows文件夹“.x”,它说“我必须提供一个文件名”或类似的内容。您仍然可以使用命令行在Windows中创建点文件/点文件夹。只有Windows资源管理器不允许您创建它们。不过,它们不会被隐藏;如果希望隐藏属性不可见(这是像SVN和git这样的VCS对它们的.SVN/.git目录所做的),那么仍然必须应用隐藏属性。我正在Mac OS X上开发,但我希望它对于类似unix的系统是通用的。如果我不必重新编写脚本,Windows支持会很好。。。我期待着这样一个世界:每个人都将配置文件放入
~/.config
而不是
~
…根据LSB(如果我没记错的话)
$HOME/.config/$appname/
应该用于配置文件-
$HOME/$appname/
被认为是遗留的。大量的数据不应该放在那里。它只有5KB左右,所以我认为它会很好。我正在努力使脚本具有超可读性,以便人们能够理解它(我将包括一个设置数据存储位置的首选项,显示
~/.mydata
作为默认值)。