如何在Python和UNIX中剥离空格,以便在整个字符串中仅统一呈现一个空格
假设我的字符串是如何在Python和UNIX中剥离空格,以便在整个字符串中仅统一呈现一个空格,python,unix,Python,Unix,假设我的字符串是 a = ' Hello, I am trying to strip spaces perfectly ' 我知道: 使用.strip进行剥离将删除前面的空格和前导空格。 使用a.replace,我可以删除一个空格等 如何表述这一点,以便无论有多少空格,输出都将始终呈现为每个单词之间只有一个空格,并且在开始或结束时没有空格 在python和Unix中。。。谢谢 然后你可以使用。使用str.split将自动消除多余的空白: >>>
a = ' Hello, I am trying to strip spaces perfectly '
我知道:
使用.strip进行剥离将删除前面的空格和前导空格。
使用a.replace,我可以删除一个空格等
如何表述这一点,以便无论有多少空格,输出都将始终呈现为每个单词之间只有一个空格,并且在开始或结束时没有空格
在python和Unix中。。。谢谢 然后你可以使用。使用str.split将自动消除多余的空白:
>>> a = ' Hello, I am trying to strip spaces perfectly '
>>> print ' '.join(a.split())
Hello, I am trying to strip spaces perfectly
使用shell工具谢谢!:
这是一个特别好的方法,因为它处理所有的空白,包括制表符和换行符,而不仅仅是空格。谢谢!等待此Echo的UNIX解决方案“您好,我正在尝试完美地剥离空间”| tr-s[:space:]| sed-e的/^*/'-e的/*$/'输出:您好,我正在尝试剥离空间perfectly@LPtr步骤只是将空格序列压缩为一个空格,第二个管道sed去除了剩余的前导/尾随空间。如果您打算使用sed,则可以将其用于所有处理。sed的/////g;s/^/;s/$/'显然,Python部分有一个副本。但是,unix部分与主题无关,属于unix.stackexchange.com或superuser.com。
$ echo ' Hello, I am\n trying to strip spaces perfectly ' | tr -s "[:space:]" " " | sed -e 's/^ *//' -e 's/ *$//'
Hello, I am trying to strip spaces perfectly