我剛開始使用 for 回圈,正在嘗試創建首字母縮略詞查找。之后運行良好的代碼還有更多內容,但是當我嘗試查找已添加到串列中的首字母縮略詞時,它還沒有被添加。這可能是一個簡單的語法錯誤或一個更大的問題。
import requests
data_site = requests.get('https://raw.githubusercontent.com/priscian/nlp/master/OpenNLP/models/coref/acronyms.txt')
text_line = data_site.text.split('\n')
acronyms_dict = {}
for line in text_line:
one_line = line.split(' ',1)
if len(one_line) > 1:
acro = one_line[0].strip()
meaning = one_line[1].strip()
if acro in acronyms_dict:
acronyms_dict[acro] = acronyms_dict[acro] ', ' meaning
else:
acronyms_dict[acro] = meaning
起初我遇到的一個大問題是定義我想要拆分的位置。我相信目前設定的方式是每行將有一個拆分,直接在每行的首字母縮寫詞之后。條帶應該帶走空白。匯入的檔案位于我的代碼頂部。我想將每個資料條目添加到字典中。使用 if 回圈是因為同一個鍵有多個值,所以當我稍后輸入該鍵時,我希望它輸出所有加在一起的鍵,形成一個用逗號分隔的連續文本。任何幫助表示贊賞。
或者,我的問題可能與首字母縮略詞的檢索有關,那部分代碼在這里:
lookup_loop = 0
while lookup_loop == 0:
print('Let us lookup some acronyms!')
lookup = input('Enter an acronym: ')
if lookup in acronyms_dict:
print("{} is short for {}".format(lookup, acronyms_dict[lookup]))
#format() formats the specified value(s) and inserts them inside the string's placeholder
else:
new_entry = input('This key does not seem to be in the dictionary\nWould you like to create a value and add the term?\nYes=1\tNo=2\t')
uj5u.com熱心網友回復:
從. ' '_ str.split該檔案使用制表符來分隔首字母縮略詞:
import requests
data_site = requests.get(
"https://raw.githubusercontent.com/priscian/nlp/master/OpenNLP/models/coref/acronyms.txt"
)
text_line = data_site.text.split("\n")
acronyms_dict = {}
for line in text_line:
one_line = line.split(maxsplit=1) # <-- remove the ' '
if len(one_line) > 1:
acro = one_line[0].strip()
meaning = one_line[1].strip()
if acro in acronyms_dict:
acronyms_dict[acro] = acronyms_dict[acro] ", " meaning
else:
acronyms_dict[acro] = meaning
print(acronyms_dict)
印刷:
{
'24KHGE': '24 Karat Heavy Gold Electroplate',
'2B1Q': '2 Binary 1 Quaternary',
'2D': '2-Dimensional',
...
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/536596.html
上一篇:for回圈沒有正確迭代
下一篇:R添加到for回圈
