作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
假设我有 3 个 python 字符串,我可以将它们全部格式化为 2 个分隔空格,如下所示:
h="hello"
m="my"
w="world"
print("{} {} {}".format(h,m,w))
或使用
print("%s %s %s" % (h,m,w))
现在假设我确定 h 和 w 都有值,但 m 可能是一个空字符串。上面的两个代码片段将产生 "hello{two speces here}world
。
我知道我可以使用不同的函数和条件表达式来通过代码进行格式化,例如在
print(h+" " + m+(" " if len(m)>0 else "") + w)
或者选择一个不同的格式化字符串
print(("{} {} {}" if len(m)>0 else "{}{} {}").format(h,m,w))
基于m的长度
我的问题是这可以使用格式字符串 完成吗? (例如,如果其参数不为空,将用 1 个空格填充的一些格式修饰符)。
最佳答案
不确定是否很方便,但有一种方法,根据字符串的“真实”值生成空间或不生成空间:
h="hello"
m="my"
w="world"
print("{}{}{}{}".format(h," "*bool(m),m,w))
结果:
hello my world
现在设置m
为空字符串,你得到
hello world
关于python - python字符串格式中的可选空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46926882/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!