使用Python删除\ n字符

时间:2019-05-03 12:05:49

标签: python-3.x string

我有一个带有“ \ n”字符的句子列表。

[("Types of Third\n-\nParties\n"),("Examples of third\n-\nparties"), ...]

我尝试使用以下代码:

def remove_whitespace(sent_text):    
    j=0
    for i in sent_text: 
        sent_text[j]=i.rstrip("\n")
        j+=1

 remove_whitespace(sent_text)

但是\ n字符没有消失。 有什么想法吗?

谢谢

4 个答案:

答案 0 :(得分:1)

使用"C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "Script.au3" > "%TMP%\Log.txt"` ::"C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "Script.au3" > "%TMP%\Log.txt" ::START "" "R:\Script.au3 >%TMP%\Log.txt" ::Start "" "%ProgramFiles(x86)%\AutoIt3\Beta\AutoIt3_x64.exe" "R:\Script.au3" ^> "%TMP%\Log.txt" ::Start "" "R:\Script.au3" > "%TMP%\Log.txt" ::Start "" /d "R:\" "Script.au3" 1>"%TMP%\Log.txt" 2>&1 ::Start "" /d "R:\" "Script.au3" > "%TMP%\Log.txt" ::START "" /d "R:\" /B "Script.au3 >%TMP%\Log.txt" REM Start "" "%ProgramFiles(x86)%\AutoIt3\Beta\AutoIt3_x64.exe" ""R:\Script.au3" > "%TMP%\Log.txt"" REM Start "" "%ProgramFiles(x86)%\AutoIt3\Beta\AutoIt3_x64.exe" "\"R:\Script.au3\" > \"%TMP%\Log.txt\"" REM "%ProgramFiles(x86)%\AutoIt3\Beta\AutoIt3_x64.exe" ""R:\Script.au3" > "%TMP%\Log.txt"" REM "%ProgramFiles(x86)%\AutoIt3\Beta\AutoIt3_x64.exe" "\"R:\Script.au3\" > \"%TMP%\Log.txt\"" REM Start "" /d "R:\" "C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "Script.au3" ^>"%TMP%\Log.txt" ::Start "" /d "R:\" "C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "Script.au3" >"%TMP%\Log.txt" REM Start "" /d "R:\" "C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "R:\Script.au3" ^>"%TMP%\Log.txt" ::Start "" /d "R:\" "C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "R:\Script.au3" >"%TMP%\Log.txt" REM Start "" "C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "Script.au3" ^>"%TMP%\Log.txt" ::Start "" "C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "Script.au3" >"%TMP%\Log.txt" REM Start "" "C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "R:\Script.au3" ^>"%TMP%\Log.txt" ::Start "" "C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "R:\Script.au3" >"%TMP%\Log.txt" REM Start "" "C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "R:\Script.au3" ^1^>"%TMP%\Log.txt" ^2^>^&^1 :: START CMD /c "C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "Script.au3" > "%TMP%\Log.txt" :: https://www.robvanderwoude.com/battech_redirection.php ::START CMD.EXE /C ^(command ^> logfile^) ::START cmd /c ^("C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "Script.au3" ^> "%TMP%\Log.txt"^) ::START "C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "Script.au3" ^> "%TMP%\Log.txt" SET sMyBat=%TMP%\ZeitNews.bat ECHO "C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "R:\Script.au3" ^> %TMP%\Log.txt > %sMyBat% ::START "%sMyBat%" CALL "%sMyBat%" ::pause start "" /min cmd /c ""C:\Program Files (x86)\AutoIt3\Beta\AutoIt3_x64.exe" "R:\Script.au3"" ^> %TMP%\log.txt

例如:

str.split

输出:

str.join

答案 1 :(得分:1)

一种快速的解决方案是使用str.replace。 就您而言:

def remove_whitespace(sent_text):    
    j=0
    for i in sent_text: 
        sent_text[j]=i.replace("\n","")
        j+=1

答案 2 :(得分:0)

您可以使用rstrip()函数。

如果 text 带有\ n或\ r,则 text.rstrip()会将其删除。

答案 3 :(得分:0)

您还可以使用列表推导删除这些不需要的项目。

input_list = [("Types of Third\n-\nParties\n"),("Examples of third\n-\nparties")]

def expunge_unwanted_elements(input_variable):
  cleaned =  [item.replace('\n', ' ').strip() for item in input_variable]

  # Do you want to remove the dashes?  If so use this one.
  # cleaned = [item.replace('\n', '').replace('-', ' ').strip() for item in input_variable]

  return cleaned


print (expunge_unwanted_elements(input_list))
# outputs 
['Types of Third - Parties', 'Examples of third - parties']

# or this output if you use the other cleaned in the function
['Types of Third Parties', 'Examples of third parties']