我有一個長字符串,我正在從一個文件行中讀取行。我試圖將行轉換爲字典並嘗試檢查給定是否存在字典鍵值必須返回true。從字符串返回字典值作爲元組或列表
實施例:
>>> data
'Xyz pqrs,uvw'
>>> dict(line.split(',') for line in data.strip().splitlines())
{'Xyz pqrs': 'uvw'}
這是我
輸出預期結果:
在元組{'Xyz' : ('pqrs','uvw')}
或列表
{'Xyz' : ['pqrs','uvw']}
並且如果「PQRS」出現在data.values()它必須打印「是」
>>> data2
{'Xyz': ['pqrs', 'uvw']}
>>>
>>> if 'pqrs' in (d for d in data2.values()):
... print "yes"
...
>>> if 'pqrs' in data2.values():
... print "yes"
...
我試用過的方法,但並沒有得到來自任何輸出。
任何提示將是有益的。
我得到無效的語法? >>> d = {key:values.split(「,」)for key,data.splitlines()中line.split()中的值)} 文件「」,第1行 d = {key :鍵值values.split(「,」),data.splitlines()中line.split()中的值} ^ SyntaxError:無效的語法 –
您使用的是什麼版本的Python? Dict-Comprehensions在Python 2.7左右是新的(即不是新增功能)。或者,嘗試'dict((key,values.split(「,」))...)' –
我正在使用python 2.6。謝謝,我知道了 –