【问题标题】:Split the Tuple with strings with the format as shown Below使用格式如下所示的字符串拆分元组
【发布时间】:2020-04-16 21:04:54
【问题描述】:

谁能帮助我如何拆分下面的元组显示?我有 x 和下面打印的元组。在少数情况下,我只需要街道名称或街道号码,或者只需要国家或全部

>>> print(x)
(OrderedDict([('AddressNumber', '1893'), 
              ('StreetNamePreDirectional', 'W'), 
              ('StreetName', 'Malvern'), 
              ('StreetNamePostType', 'Ave'),
              ('Po#', '2425'), 
              ('PlaceName', 'Fullerton'), 
              ('StateName', 'CA'), 
              ('ZipCode', '92833')]), 
  'Street Address')

我希望得到以下串联的地址编号、StreetPredirectional、街道名称、地名、州名、邮政编码:

    ---Expected Output----
Print (AddressNumber+StreetNamePreDirectional+StreetName+StateName)
Output:1893 W Malvern Ave, Fullerton, CA

在这种情况下我不想要 PO#。我应该能够选择所需的标签,例如街道名称和号码或有时只有地名或国家。

【问题讨论】:

  • 你尝试过什么,它到底有什么问题?您可以对元组进行索引,然后使用键从有序字典中获取适当的值。
  • 你能比“有时”更具体吗?
  • 您到底想要什么?我们随时为您提供帮助,但您在提出任何问题时都必须更加具体。
  • 大家好,抱歉。我已经用“期望输出”更新了我的问题。有时,我需要获取整个地址(地址、街道、邮编、CA),有时只需要获取街道名称。所以,我应该能够单独打印或连接每个标签(街道名称、邮编)......希望我现在很清楚......谢谢你的时间

标签: python list dictionary split tuples


【解决方案1】:

我能够弄清楚我的答案。我首先从元组中只切出有序字典,然后将其更改为常规字典,最后将我所有的字典值连接起来,使其看起来像一个地址。 ** 我还可以选择在我的最终格式化地址中省略邮政编码或街道名称,只需选择我需要的字典值。感谢所有抽出时间查看此内容的人

z=list(x[0:1]) #convert the list
y=z[:1][0] #select only  OrderedDict

p=dict(y) #convert to regular dictionary

# pull individual items to make an formatted address
main_address=p['AddressNumber']+' '+ p['StreetNamePreDirectional']+' '+ p['StreetName'] +' '+  p['StreetNamePostType']+','+ p['PlaceName']+','+ p['StateName']+','+ p['ZipCode']

print(main_address)
>>>output: 1893 W Malvern Ave,Fullerton,CA,92833

【讨论】:

    猜你喜欢
    • 2017-12-21
    • 1970-01-01
    • 1970-01-01
    • 2022-12-20
    • 1970-01-01
    • 2012-02-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多