在Python中换行:在参数字符串处断行
我有一个脚本,其中有一个很长的字符串参数被传递给一个函数:
parser = argparse.ArgumentParser(description='Auto-segments a text based on the TANGO algorithm (Rie Kubota Ando and Lillian Lee, "Mostly-Unsupervised Statistical Segmentation of Japanese Kanji Sequences" (Natural Language Engineering, 9(2):127-149, 2003)).')
我想把这个脚本中的行长度限制在79个字符,这就意味着需要在这个字符串的中间换行。简单地在79个字符处换行会导致这样的情况,这在语法上是错误的:
parser = argparse.ArgumentParser(description="Auto-segments a text based on
the TANGO algorithm (Rie Kubota Ando and Lillian Lee, 'Mostly-Unsupervis
ed Statistical Segmentation of Japanese Kanji Sequences' (Natural Langua
ge Engineering, 9(2):127-149, 2003)).")
PEP 8 提供了一些关于在不同位置换行的指导,但有没有办法在一个字符串参数的中间换行呢?
(还有一个相关但不太重要的问题:在(python)脚本中,如何在单词中间合理地换行自然语言文本?)
3 个回答
0
argparse
会自动调整描述字符串的格式,所以即使你使用带有多行和额外空格的字符串,结果也不会改变:
import argparse
parser = argparse.ArgumentParser(description='''Auto-segments a text based on the
TANGO algorithm (Rie Kubota Ando and Lillian Lee, "Mostly-Unsupervised
Statistical Segmentation of Japanese Kanji Sequences" (Natural Language
Engineering, 9(2):127-149, 2003)).''')
args = parser.parse_args()
% test.py -h
usage: test.py [-h]
Auto-segments a text based on the TANGO algorithm (Rie Kubota Ando and Lillian Lee,
"Mostly-Unsupervised Statistical Segmentation of Japanese Kanji Sequences" (Natural
Language Engineering, 9(2):127-149, 2003)).
optional arguments:
-h, --help show this help message and exit
1
当然可以!请看下面的内容:
这个问题主要是关于如何在编程中处理一些常见的错误和问题。很多时候,程序在运行时可能会出现意想不到的情况,比如输入的数据不符合要求,或者程序的某个部分没有按预期工作。
为了让程序更稳定,我们可以使用一些技巧来捕捉这些错误。比如,使用“异常处理”机制,这就像是在给程序加一个安全网,当出现问题时,它不会直接崩溃,而是可以优雅地处理这些错误,给用户一个友好的提示。
另外,编写清晰的代码和注释也是非常重要的。这样即使是新手也能理解代码的逻辑,减少出错的机会。
总之,编程就像是搭建一个房子,基础要打牢,才能避免后续出现各种问题。希望这些小技巧能帮助你在编程的路上走得更顺利!
>>>longarg = "ABCDEF\
GHIJKLMNOPQRSTUVW\
XYZ"
>>>print longarg
ABCDEFGHIJKLMNOPQRSTUVWXYZ
5
字面字符串可以紧挨着写在一起,编译后会变成一个完整的字符串。所以:
parser = argparse.ArgumentParser(description="Auto-segments a text based on "
"the TANGO algorithm (Rie Kubota Ando and Lillian Lee, 'Mostly-Unsupervised "
"Statistical Segmentation of Japanese Kanji Sequences' (Natural Language "
"Engineering, 9(2):127-149, 2003)).")
可以根据需要调整,使其适合80个字符。