【发布时间】:2018-12-25 15:56:09
【问题描述】:
我正在创建一个程序来从文本文件中获取句子并匹配 JSON 文件中的城市名称。匹配不起作用,我无法传递我的返回值。
我尝试过先做简单而不创建类并检查静态城市。
import json
with open("store.txt", "r+") as g, open("city.json") as c:
dat1 = json.load(c)
dat = g.readlines()
# print(dat)
# def hel():
# for items1 in dat1:
# gat = items1.get("name")
# print(gat)
class One:
def __init__(self):
self.dat = dat
self.dat1 = dat1
def leh(self):
for items in self.dat:
# print(items)
# for hy in items:
return items
def main(self):
returned = test_obj.leh()
print(returned)
# for items1 in self.dat1:
# gat = items1.get("name")
# if gat in returned:
# print("Got it")
if __name__ == '__main__':
test_obj = One()
test_obj.main()
我希望传递的值能够打印城市名称并将其与存储在文本文件中的句子匹配。
store.txt 中的行:
“德里是一座不错的城市。” “伦敦不错。”
city.json 中的行:
[
{
"id": 1,
"name": "Surat",
"country": "IN"
},
{
"id": 1259229,
"name": "London",
"country": "GB"
},
{
"id": 1273294,
"name": "Delhi",
"country": "IN"
}
]
【问题讨论】:
-
请从每个文件中发布几行,以便您的问题更容易理解
-
您的
leh函数未解析整个文件。它在阅读第一行后返回。 -
我需要解析整个文件数据。
-
仍然不清楚你在问什么。你指的是什么传递的值?您是要打印来自
store.txt的句子还是来自 json 文件的值? -
我正在尝试从 JSON 中获取所有“名称”并在存储在文本文件中的句子中搜索它们。如果匹配,则执行一些操作。
标签: python-3.x