小编Qua*_*ati的帖子

使用Windows批处理文件的多行命令的单行

我试着理解批处理文件中单个命令行中的多个命令是如何工作的.

dir & md folder1 & rename folder1 mainfolder
Run Code Online (Sandbox Code Playgroud)

和其他情况类似的命令,但&&&.

dir && md folder1 && rename folder1 mainfolder
Run Code Online (Sandbox Code Playgroud)

1.这两种情况有什么区别?


我想问的其他事情:

单线batch.bat:

dir & md folder1 & rename folder1 mainfolder
Run Code Online (Sandbox Code Playgroud)

多线程batch.bat:

dir
md folder1
rename folder1 mainfolder
Run Code Online (Sandbox Code Playgroud)

2.这种单线程和多线程在批处理文件程序方面是否相同?


还有一件事我想知道:

3.如果我从main.bat调用其他批处理文件,它们是否独立运行?主批处理文件不等待其他批处理文件中的结束程序?怎么做?

windows command-line cmd batch-file simultaneous

13
推荐指数
1
解决办法
2万
查看次数

如何更新嵌套字典中的键值?

items = [{'id': 1, 'language': 'English', 'name': 'Sarah', 'description': 'Blah blah'}, {'id': 2, 'language': 'English', 'name': 'Jessica', 'description': 'More blah'}]

d = {}
for item in items:

    language = item['language']
    id = item['id']
    name = item['name']
    description = item['description']

    d[language][id] = {'name': name, 'description': description}

print(d)
Run Code Online (Sandbox Code Playgroud)

我期待在输出中看到:

{'English': {1:{'name': 'Sarah', 'description': 'Blah blah'}, 2:{'name': 'Jessica', 'description': 'More blah'}}}
Run Code Online (Sandbox Code Playgroud)

但不幸的是我得到了KeyError: 回溯:KeyError

那么,问题是如何在嵌套字典中更新/附加值?我做错了什么?

python dictionary append python-3.x

3
推荐指数
1
解决办法
96
查看次数

将 PDF 转换/写入 RAM 作为类似文件的对象,以便进一步使用它

我的脚本生成 PDF ( PyPDF2.pdf.PdfFileWriter object) 并将其存储在变量中。我需要在脚本中进一步处理它file-like object。但现在我必须先将其写入硬盘。然后我必须将其作为文件打开才能使用它。

为了防止这种不必要的写入/读取操作,我找到了许多解决方案 -StringIO等等BytesIO。但我找不到什么可以帮助我解决我的情况。

据我了解 - 我需要“转换”(或写入RAM)PyPDF2.pdf.PdfFileWriter object才能file-like object直接使用它。

或者还有另一种方法完全适合我的情况?

更新 - 这是代码示例

from pdfrw import PdfReader, PdfWriter, PageMerge
from PyPDF2 import PdfFileReader, PdfFileWriter


red_file = PdfFileReader(open("file_name.pdf", 'rb'))

large_pages_indexes = [1, 7, 9]

large = PdfFileWriter()
for i in large_pages_indexes:
    p = red_file.getPage(i)
    large.addPage(p)

# here final data have to be written (I would like to avoid that)
with open("virtual_file.pdf", 'wb') as tmp:
  large.write(tmp) …
Run Code Online (Sandbox Code Playgroud)

python pypdf python-3.x

2
推荐指数
1
解决办法
3125
查看次数

为什么我不能插入Python列表?

我正在尝试通过索引向现有列表插入一些项目,如下所示:

c = ['545646', 'text_item', '151561'].insert(1, '555')
print(c)
Run Code Online (Sandbox Code Playgroud)

结果我什么也没有。

输出

为什么我不能在Python列表中插入?

所需的输出是:

['545646', '555', 'text_item', '151561']
Run Code Online (Sandbox Code Playgroud)

python list insert python-3.x

2
推荐指数
2
解决办法
79
查看次数

Python列表理解时如何在条件语句中什么都不做?

这是事情:

lst = [1, 2, 3]
i = [x if x == 2 else "I don't need that!" for x in lst]
print(i)
Run Code Online (Sandbox Code Playgroud)

输出:

["I don't need this item!", 2, "I don't need this item!"]
Run Code Online (Sandbox Code Playgroud)

正如您在输出中看到的,我有我不想拥有的第一个和最后一个项目。

我尝试了各种方法,例如删除else语句(这是不可能的),替换0pass语句(它也不起作用)。

甚至有可能listlist理解时使用条件获取刚需要的项目吗?还是只有filter功能才有可能?

需要的输出:

[2]
Run Code Online (Sandbox Code Playgroud)

python list-comprehension filter conditional-statements python-3.x

-1
推荐指数
1
解决办法
1197
查看次数