- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我在使用 fileinput
python 模块时遇到了一些奇怪的行为。如果我尝试更改的文件没有用户读取权限,它将被删除。
import fileinput
try:
for line in fileinput.input('TEST', inplace=1):
line = line.strip()
if '/' in line:
print "PATH: " + line
else:
print line
except Exception as e:
print e
如果我运行这个文件,我会得到:
$ ls -l
--wxrwxrwx 1 myusername agqt3 0 Feb 25 11:02 TEST
$ python test.py
[Errno 13] Permission denied: 'TEST.bak'
$ ls -l
total 0
文件被删除。对于不包括用户 r
的所有其他权限位组合,也会发生同样的事情。我已经在 bash
、csh
和 ksh
中复制了它。
最佳答案
您似乎正在使用 inplace=1
,所以是的,该文件预计会被覆盖。完成后,将创建一个 .bak
文件,并覆盖初始文件名。
但是,您没有读取初始文件的权限(但可以写入),因此创建备份时它是空的(或失败),并且原来的覆盖。
来自 inplace 文档: http://docs.python.org/2/library/fileinput.html#fileinput.FileInput
Optional in-place filtering: if the keyword argument inplace=1 is passed to fileinput.input() or to the FileInput constructor, the file is moved to a backup file and standard output is directed to the input file (if a file of the same name as the backup file already exists, it will be replaced silently). This makes it possible to write a filter that rewrites its input file in place. If the backup parameter is given (typically as backup='.'), it specifies the extension for the backup file, and the backup file remains around; by default, the extension is '.bak' and it is deleted when the output file is closed. In-place filtering is disabled when standard input is read.
关于python - fileinput.py 删除目标文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15060466/
在 fileinput.Fileinput (或其他模块/类)中是否有一种方法可以将整个文件读入内存,以便我可以用列表中的文本 block 替换文件中的文本 block (保存在内存)。 有一个 .r
我正在尝试使用 glob 打开多个文件并通过一系列函数提供它们。我的一些文件是 gzip 压缩的,有些是 bz2,有些是纯文本。我通常使用 fileinput,但无法弄清楚让它接受压缩文件的语法。基于
我正在尝试使用 Python FileInput 类编辑文本文件。首先,我将需要写入的行存储在字典中。然后我遍历该字典,如果字典 [key] 与该行中的任何行匹配,我就用字典键值对替换该行。如果文件中
我正在尝试替换文件中的多个字符串。 我的文件可能包含如下内容: 文件1: #groovy some test some more test REPLACE_1 REPLACE_OPTIONAL_1 R
我在 yii2 项目中使用 kartik 文件输入小部件。 http://demos.krajee.com/widget-details/fileinput 一切都很好,直到访问更新页面,其中使用“i
我正在尝试更改 Shiny 中 fileInput 小部件中上传进度条的颜色。我是一个有点 Shiny 的新手,在互联网上搜索过但没有结果。有什么想法吗? 最佳答案 这是一个示例应用程序,我使用 CS
如果我的 fileInput 元素在一个普通的 div 中,那么它工作正常。但是如果我把它放在 里面然后我得到它未定义。 这是我的代码: HTML Modal title
如果我的 fileInput 元素在一个普通的 div 中,那么它工作正常。但是如果我把它放在 里面然后我得到它未定义。 这是我的代码: HTML Modal title
当我使用 Krajees Bootstrap Fileinput 上传文件时,我会对文件执行服务器端验证。当出现问题时,我只需使用 {error:'Something goneError'} 输出 J
for line in fileinput.FileInput("file.txt", inplace=1): if "success" in line: print(line) 当我使用
我试图在一个小型 python 程序中将用户输入作为函数调用来获取,但是,当我使用 input() 方法时,python shell 不允许我输入任何内容并退出本身。 from fileinput i
我正在制作一个脚本,它从终端获取一个文件作为输入。为了做到这一点,我调用 myScript像那样: $python myScript.py 我做错了什么? fileinput.filename()如
我在 MAC OS X 上使用 Python 2.7,并编写了一个程序来用另一个词替换文件中的一个词。每当该词出现在该文件中时,我都希望将其替换为用户指定的另一个词。它似乎在工作,但它似乎在底部输出了
我在使用 fileinput python 模块时遇到了一些奇怪的行为。如果我尝试更改的文件没有用户读取权限,它将被删除。 import fileinput try: for line in
我有一些代码正在尝试为其编写单元测试。 这是我的功能: def sanitize_text(): total_text = [] # Regex split to strip non-
我在 python 2.7 中使用 os.walk 打开多个文件,然后将这些文件的所有感兴趣的行添加到列表中。稍后我想用 fileinput 编辑这些行并关闭它。我怎样才能实现这个目标?使用下面的代码
当我像这样使用模块 fileinput 遍历一组 gzip 文件的行时: for line in fileinput.FileInput(files=gzipped_files,openhook=fi
我正在尝试使用 fileinput 模块的 inplace filtering feature就地重写输入文件。 需要将编码(读取和写入)设置为 latin-1 并尝试将 openhook=filei
我正在使用 python Panel Fileinput 小部件上传文件。上传有效,我需要用相同的文件名保存上传的数据,但我找不到访问上传的文件名的方法。 import panel as pn pn.
你能帮我减少 Shiny 中 fileInput 和 text 之间的空间吗?我想留下类似于我附上的图的东西。可执行代码如下。 谢谢! runApp( list(ui = fluidPage(
我是一名优秀的程序员,十分优秀!