【问题标题】:Python - Alphabets, numbers and combinationsPython - 字母、数字和组合
【发布时间】:2018-12-19 02:34:31
【问题描述】:

我在 python 中有一个包含字母和数字的列表,所有这些都是带有数据的资产的 ID。
我需要实现以下目标:

  1. 将字母和数字分隔在两个单独的列表中。
  2. 使用列表从两个独立的 SQL 数据库中获取数据。
  3. 将字母和数字 ID 连同我为这两者获得的数据一起放回原处。

我知道第二点不准确,我可以做到:第一点和最后一点造成了真正的困难。

提前致谢!

【问题讨论】:

  • 你能分享一些示例输入和输出吗?到目前为止,您还尝试过什么?
  • 这是我的清单:[82, 6, 6, 2, 7, 1, 149, 139, 3, 'VWO', 'IWF', 'VEA', 2] 我会喜欢将其拆分为以下列表 [82, 6, 6, 2, 7, 1, 149, 139, 3, 2] ['VWO', 'IWF','VEA'] 我将使用与两组列表关联的数据,例如: [82, 6, 6, 2, 7, 1, 149, 139, 3, 2 x,x,x,x,x,x,y,y,y] [ 'VWO'、'IWF'、'VEA']
  • 这是我的清单:[82, 6, 6, 2, 7, 1, 149, 139, 3, 'VWO', 'IWF', 'VEA', 2] 我会喜欢将其拆分为以下列表 [82, 6, 6, 2, 7, 1, 149, 139, 3, 2] ['VWO', 'IWF','VEA'] 我将使用与两组列表关联的数据,例如: [82, 6, 6, 2, 7, 1, 149, 139, 3, 2 x,x,x,x,x,x,y,y,y] [ 'VWO', 'IWF','VEA' z,z,z] 然后我希望将其作为一个数据框,其列的顺序与与之关联的数据相同:[82, 6, 6, 2, 7, 1, 149, 139, 3, 'VWO', 'IWF', 'VEA', 2 x,x,x,x,x,x,y,y,y,z,z,x]
  • @user36899 您的问题和其他 cmets 不清楚。请更新您的问题以显示您想要的输入和输出。所以有人可以帮助你。

标签: python numeric alphabetical


【解决方案1】:

您可以先克隆原始列表,然后对克隆列表执行任何您需要执行的操作。获取数据后,使用原始列表进行排序,将两个列表连接在一起

【讨论】:

    【解决方案2】:

    您似乎想要对列表中的每个值运行查询,如果当前值是数字则使用一个查询,如果当前值是字符串则使用另一个查询。

    您可以通过迭代输入、对每个值运行适当的查询并保留结果列表来做到这一点。

    假设您有函数queryNumberqueryString,它们都与您的数据库交互,下面是一个如何解决此问题的示例:

    data = [82, 6, 6, 2, 7, 1, 149, 139, 3, 'VWO', 'IWF', 'VEA', 2]
    results = []
    
    for x in data:
        if isinstance(x, str):
            result = queryString(x)
        elif isinstance(x, int) or isinstance(x, float):
            result = queryNumber(x)
        results.append(result)
    
    full_results = data + results
    

    样本full_results:

    [82, 6, 6, 2, 7, 1, 149, 139, 3, 'VWO', 'IWF', 'VEA', 2, 'result for 82', 'result for 6', 'result for 6', 'result for 2', 'result for 7', 'result for 1', 'result for 149', 'result for 139', 'result for 3', "result for 'VWO'", "result for 'IWF'", "result for 'VEA'", 'result for 2']
    

    【讨论】:

    • 谢谢,对不起,我无法发布完整的回复。请看下面:这是我的列表:[82, 6, 6, 2, 7, 1, 149, 139, 3, 'VWO', 'IWF', 'VEA', 2] 将此拆分为以下列表 [82, 6, 6, 2, 7, 1, 149, 139, 3, 2] ['VWO', 'IWF','VEA'] 我将获得与两组列表关联的数据的数据框,类似于: [82, 6, 6, 2, 7, 1, 149, 139, 3, 2 x,x,x,x,x,x,y,y,y] ['VWO', 'IWF', 'VEA' z,z,z] 然后按照与其中数据相同的列顺序放入数据框:[82, 6, 6, 2, 7, 1, 149, 139, 3, 'VWO', 'IWF' , 'VEA', 2 x,x,x,x,x,x,y,y,y,z,z,x]
    • 我想指出,这必须以一般形式编写,因为代码正在处理来自用户的输入
    • @user36899 这个编辑对问题有帮助吗?如果没有,请告诉我我可以调整什么
    猜你喜欢
    • 2014-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    • 2016-04-04
    • 1970-01-01
    相关资源
    最近更新 更多