2017-05-30 23 views
0

PyDictionaryというモジュールで作業しています。リスト内の文字列から文字を削除するにはどうすればよいですか?

[u'welcome', u'howdy', u'hi', u'greetings', u'bonjour'] 

私が試した:それは単語の同義語を取得するたびに、それは私がprintlistをしようとすると、しかし、それはたとえば、同義語前'u'を持って、同義語のlistを作成synonym = re.sub('u','',synonym[0])をし、これは動作しますが、list全体ではなく、'welcome'が印刷されます。

ご協力いただければ幸いです。 ありがとう! uあなたが見ているが、文字列の内容の一部ではないため、定期的に削除することはできません

result = [str(x) for x in synonym] 
+1

「u」は、それがユニコード文字列であることを意味します。 https://stackoverflow.com/questions/11279331/what-does-the-u-symbol-mean-in-front-of-string-values – idjaw

+0

これは、それがUnicode文字列であることを知らせるPythonの方法です。しかし、文字列を印刷すると、 'u'は表示されないので、心配する必要はありません。 –

+0

'u'接頭辞は、文字列がユニコードであることを意味します。 'print()'関数を使ってそれを印刷すると、そのデコレータは表示されません(例えば、 'print(your_list [0])') – zwer

答えて

0

次のようなlist内包表記を使用することができます発現置換。代わりに、開封の引用の一部であると考えるべきです。 Python言語の構文自体は、文字列リテラルをこのように使い分けられた引用符で定義することを可能にします。たとえば、次のように

a = 'spam' 
b = u'spam' # in Python 2, a and b are different types 

あなたは変数の道を表示するときだろうプログラマ、すなわち引用符文字が見えるような方法で(例えば、単にプロンプ​​トでsynonym[0]を入力、またはprintしようとします全体リストsynonym、またはそうでなければPythonのrepr()メカニズムを呼び出して)、uも表示されます。対照的に、ユーザ(たとえば、print synonym[0]、またはjoinでリストを作成した後、結果の文字列をprintと入力する)のように変数を表示すると、引用文字自体が表示されないのと同じように、 uも表示されません。

+0

これはすでに文字列のリストです! – Jan

0

:あなたはstringslistlistを変換したい場合は

関連する問題