我遇到了一个问题,实际上我有一个JSON文件,其中每个对象都在一行中。因此,如果有100个对象,则将有100条线。
[{ "attribute1" : "no1", "attribute1": "no2"}
{ "attribute1" : "no12", "attribute1": "no22"}]
Run Code Online (Sandbox Code Playgroud)
我打开此JSON文件,并删除每个元素的一些属性。
然后,我想以相同的方式将对象写回到文件中(1个对象= 1行)。
我尝试使用“缩进”和“分隔符”来执行此操作,但是它不起作用。
我想拥有 :
[{ "attribute1": "no2"}
{"attribute1": "no22"}]
Run Code Online (Sandbox Code Playgroud)
谢谢阅读。
with open('verbes_lowercase.json','r+',encoding='utf-8-sig') as json_data:
data=json.load(json_data)
for k in range(len(data)):
del data[k]["attribute1"]
json.dump(data,json_data,ensure_ascii=False , indent='1', separators=(',',':'))
json_data.seek(0)
json_data.truncate()
Run Code Online (Sandbox Code Playgroud) 我正面临一个问题.实际上,我使用越南文本,我想找到包含大写字母(大写字母)的每个单词.当我使用're'模块时,我的函数(temp)不会像"Đà"那样捕捉到单词.另一种方式(temp2)是一次检查每个字符,它可以工作,但它很慢,因为我必须将句子分成单词.
因此,我想知道是否有一种"重新"模块可以捕获所有特殊的大写字母.
我有两种方式:
def temp(sentence):
return re.findall(r'[a-z]*[A-Z]+[a-z]*', sentence)
lis=word_tokenize(sentence)
def temp2(lis):
proper_noun=[]
for word in lis:
for letter in word:
if letter.isupper():
proper_noun.append(word)
break
return proper_noun
Run Code Online (Sandbox Code Playgroud)
输入:
'nous avons 2 ??ng et 3 Euro'
Run Code Online (Sandbox Code Playgroud)
预期产量:
['??ng','Euro']
Run Code Online (Sandbox Code Playgroud)
谢谢!