1

だから私は文字列内の特定の文字/単語を他の文字に置き換えるコードを持っています

c = {"u":"i", "c":"see", "me":"you"}

for a,b in c.iteritems():
        response = response.replace(a,b)

これは次のようになりますが、次のよう["u c me"]["i see you"]
もなり["uncalled"]ます["inseealled"]

最初の文字列だけを変更したいが、2 番目の文字列はそのままにしておく

これを回避する方法はありますか?

4

2 に答える 2

2
>>> d = {"u":"i", "c":"see", "me":"you"}
>>> ' '.join(d.get(word, word) for word in "u c me".split())
'i see you'
>>> ' '.join(d.get(word, word) for word in "uncalled".split())
'uncalled'

>>> d = {'me': 'you', 'c': 'see', 'u': 'i', 'are': 'am'}
>>> ' '.join(d.get(word, word) for word in "u are big".split())
'i am big'
>>> ' '.join(d.get(word, word) for word in "unique".split())
'unique'
于 2013-04-15T06:00:21.473 に答える
-1

完全ではありませんが、置き換えたい文字が少ない場合は、文字を検索するときにスペースを含めることができます。

b = {"u ":"i", "c ":"see", "me ":"you"," u ":"i", " c ":"see", " me ":"you",
     " u":"i", " c":"see", "me ":"you"}
于 2013-04-15T06:01:15.103 に答える