Multiple lines with sys.argv?



我正在尝试使用 sys.argv 在 Windows 命令提示符下处理 Python 2.7 中的一些文本。测试的目的是重新格式化它,删除标点符号和换行符。

from this:
Lorem ipsum dolor sit amet,
consectetur adipiscing elit.
Quisque eget ligula mauris. 
to this:
lorem ipsum dolor sit amet consectetur adipiscing elit quisque eget ligula mauris

但是,某些输入文本可能超过两行(它是从另一个来源粘贴的(,并且我收到错误(最后一行文本未被识别为内部或外部命令(

import sys
if sys.argv[1:]:
  ask = str(sys.argv[1:])
 print ask

更新:正如已经指出的那样,这不是Python问题,而是Windows DOs框问题。

所以我将调整我的问题,是否可以通过 Windows commad 控制台将多行文本粘贴到 Python 中进行处理(而不必将其作为迭代阶段保存到文本文件中(还是这种方法需要重新考虑?

你的问题和目的不清楚。但是我想您将代码保存在像 readline.py 这样的脚本文件中,然后使用文本中有换行符的参数从命令行调用它。您可以使用 ^ 在命令行参数中开始新行。假设您的文本如下 -

闪一闪,一闪一闪,小星星
我多么想知道你是什么
高高在上的世界
就像天空中的钻石

这样写——

闪烁,

闪烁,小星星^
我多么想知道你是什么^
高高在上的世界^
像天上的钻石^

所以从Windows命令提示符-

python readline.py Twinkle, twinkle, little star^  
How I wonder what you are^  
Up above the world so high^  
Like a diamond in the sky^

最新更新