簡體   English   中英

python如何檢查和替換字符串中的單詞?

[英]python how to check and replace words in string?

我是python的新手,正在嘗試創建一個函數,該函數能夠檢測字符串中是否包含單詞“ I”,“ I'm”,“ My”,“ Was”,“ Our”,“ me” ”,將其替換為“您”,“您”,“您”,“是”,“您”和“您”,並且如果末尾沒有標點符號,請在末尾添加問號。 到目前為止,我有代碼

if ' ' in statement and statement[-1].isalpha() is True:
       response = statement
       response = response + "?"

       return response

但是我不確定如何對這些單詞進行功能搜索並用相反的單詞替換。 例如,如果聲明為“我的狗說我很高興”,則其回答應為“您的狗說您很高興?”。

謝謝

創建一個字典映射並對其進行迭代,就像這樣

d = {"I": "You", "I'm": "You're".....}
for k,v in d.iteritems():
    statement = statement.replace(k, v)

檢出python的replace函數,該函數將替換為一個字符串...

例如

x = "My dog said I'm happy"
x.replace("My", "Your") # "Your dog said I'm happy"

您可以將old列表作為要替換的單詞列表,將new列表作為要替換的單詞列表,然后依次替換。

請注意,您應該在較短的單詞之前替換較長的單詞。

例如,如果在上面用“您”替換“我”,您將得到“您的狗說您很高興”。 因此,您應該 “ I” 之前替換“ I'm”。

這已經被問很多很多之前倍。 您將要使用Python 標准庫中的replace方法的一些變體。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM