Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python和UNIX中剥离空格,以便在整个字符串中仅统一呈现一个空格_Python_Unix - Fatal编程技术网

如何在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