为了账号安全,请及时绑定邮箱和手机立即绑定

Python:使用 f-string 隐藏 json 空键值

Python:使用 f-string 隐藏 json 空键值

守着星空守着你 2021-07-07 14:53:50
我使用 f-strings 而不是打印改进了我的第一个 Python 程序:....js = json.loads(data)# here is an excerpt of my code:def publi(type):    if type == 'ART':        return f"{nom} ({dat}). {tit}. {jou}. Pubmed: {pbm}"print("Journal articles:")for art in js['response']['docs']:   stuff = art['docType_s']   if not stuff == 'ART': continue   tit = art['title_s'][0]   nom = art['authFullName_s'][0]   jou = art['journalTitle_s']   dat = art['producedDateY_i']   try:       pbm = art['pubmedId_s']   except (KeyError, NameError):       pbm = ""   print(publi('ART'))该程序通过 json 文件获取数据以构建科学引文:# sample output: J A. Anderson (2018). Looking at the DNA structure, Nature. PubMed: 3256988它运行良好,除了(再次)当键没有值时,我不知道如何从返回语句中隐藏键值(即,对于一个特定的引用,json 文件中没有这样的键)。例如,一些科学引文没有“Pubmed”键/值 (pmd)。我不想用空白值打印“Pubmed:”,而是想摆脱它们:# Desired output (when pbm key is missing from the JSON file):# J A. Anderson (2018) Looking at the DNA structure, Nature# NOT: J A. Anderson (2018) Looking at the DNA structure, Nature. Pubmed: 使用publi 函数中的打印语句,我可以编写以下内容:# Pubmed: ' if len(pbm)!=0 else "", pbm if len(pbm)!=0 else ""有谁知道如何使用f-string获得相同的结果?
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 135 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信