【问题标题】:Split the content in the list to required output将列表中的内容拆分为所需的输出
【发布时间】:2021-02-01 06:21:38
【问题描述】:

我正在做一个个人项目,但我被困在了一个点上。任何建议表示赞赏

我的意见是这样的

>>> mylist = ["'(select envrnmnt_parm_value from envrnmnt_parm where module_nm='Global')||home/inbound/travel/IMS/'"]

我需要的输出是这个

"INSERT INTO CUSTOMER (app_s3) VALUES ((select envrnmnt_parm_value from envrnmnt_parm where module_nm='Global')||'home/inbound/travel/IMS/')"

我已经从陈述中删除了不必要的部分并保持简短,只是为了让我的问题更清楚。我希望这是可以理解的。我尝试了多种方法,但没有得到所需的结果。

我尝试过的一个这样的事情是 -

>>> 'INSERT INTO (app_s3) VALUES ({})'.format(','.join(mylist))
"INSERT INTO (app_s3) VALUES ('(select envrnmnt_parm_value from envrnmnt_parm where module_nm='Global')||home/inbound/travel/IMS/')"
>>>   

【问题讨论】:

    标签: python python-3.x string python-2.7


    【解决方案1】:

    将第一个myList改为:

    mylist = ["(select envrnmnt_parm_value from envrnmnt_parm where module_nm='Global')"+ '||' + '\'home/inbound/travel/IMS/\'']
    
    • 在第三个中,我添加了两个 ' 并使用 \ 将它们转义。

    【讨论】:

    • 抱歉,我在写问题描述时犯了一个错误。我已经更改了我的列表。现在它有两个双引号和一个单引号。你能提供一个解决方案吗?
    【解决方案2】:

    你可以去掉两端的单引号,然后从'||'分割分成两个字符串。

    这是我的实现方式。

    >>> first, second = mylist[0][1:-1].split('||')
    >>> f'INSERT INTO CUSTOMER (app_s3) VALUES ({first}||{second})'
    "INSERT INTO CUSTOMER (app_s3) VALUES ((select envrnmnt_parm_value from envrnmnt_parm where module_nm='Global')||home/inbound/travel/IMS/)"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-07
      • 2018-07-23
      • 2016-05-14
      • 2019-11-18
      • 1970-01-01
      相关资源
      最近更新 更多