像Dedent但更灵活
tedent的Python项目详细描述
t输入
保持您的多线模板字符串外观良好:太阳镜:
这是python版本的tedent
目录
- What is it?
- What does the name stand for?
- Why create it?
- Simple Usage
- Questions about how the indentation works?
- Important Usage Notes
- Test
这是什么?
- 类似于dedent的函数 只是语义不同
这个名字代表什么?
Te
模板字符串- 在
dent
位置
名字是硬的
为什么要创造它?
- Dedent没有像我想的那样处理下面的案子
formattedBoroughs=f"""\[ 'Brooklyn', 'Manhattan',]"""print(dedent(f"""\ New York boroughs ${formattedBoroughs} """))## expected:# New York boroughs# [# 'Brooklyn',# 'Manhattan',# ]## actual:# New York boroughs# [# 'Brooklyn',# 'Manhattan',# ]#
简单用法
importtedentfrom'tedent'## *note the lack of the backslash#print(tedent(""" This will be indented as you expect """))# writes:# This will be indented# as you expect
关于缩进如何工作的问题?
由于缩进逻辑既年轻又复杂,请参阅 the code和tests了解详细信息。这个 图书馆没有那么大,如果你有任何问题,请创建一个 Github问题。
重要使用说明
首先,这个库不处理标签页。我接受公关 带支架
其次,如果您总是像下面这样使用
tedent
tedent(""" some text """)
那你就不应该碰到任何问题。但是我们都知道输入可以是 很棘手,因此
tedent
有一些输入要求,以便格式化 系好绳子。
输入要求
- 如果参数不是字符串,则将引发错误
- 如果传递一个包含三个或更多换行符的字符串,则
- 第一行和最后一行只能包含空格
- 第二行必须包含非空白字符
- 如果不满足上述两个条件,将抛出一个错误
- 如果传递的字符串少于3个换行符
- 如果只包含空格,则返回空字符串
- 否则将引发错误
- 最后,结果中的所有尾随空格都被去掉
- 第一行和最后一行只能包含空格
- 第二行必须包含非空白字符
- 如果不满足上述两个条件,将抛出一个错误
- 如果只包含空格,则返回空字符串
- 否则将引发错误
如果您有问题,请提出github问题。
测试
## you must have poetry installed#$poetryshell$poetryinstall$pythonrunTests.py