Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
要列出的Python LOB_Python_Sql_List_Cx Oracle_Lob - Fatal编程技术网

要列出的Python LOB

要列出的Python LOB,python,sql,list,cx-oracle,lob,Python,Sql,List,Cx Oracle,Lob,使用: 我将以下SQL响应作为字符串名称: cur.execute(SQL) response= cur.fetchall() //response is a LOB object names = response[0][0].read() 正如你所看到的,它是格式化的。它的实际格式如下:\\'Mike\\':\'Mike\\'\n\'John\\'…等等 例如,为了检查Mike是否至少有一次在列表中(我不在乎有多少次,但至少有一次) 我想要这样的东西: 'Mike':'Mike' 'John

使用:

我将以下SQL响应作为字符串
名称

cur.execute(SQL)
response= cur.fetchall() //response is a LOB object
names = response[0][0].read()
正如你所看到的,它是格式化的。它的实际格式如下:
\\'Mike\\':\'Mike\\'\n\'John\\'…
等等

例如,为了检查Mike是否至少有一次在列表中(我不在乎有多少次,但至少有一次)

我想要这样的东西:

'Mike':'Mike'
'John':'John'
'Mike/B':'Mike/B' 
因此,我可以简单地遍历列表并询问

l = ['Mike', 'Mike', 'John', 'John', 'Mike/B', 'Mike/B'],
你知道我该怎么做吗

非常感谢

编辑:

当我这样做时:

for name in l: 
   'Mike' == name: 
      do something
我收到的列表几乎就是我想要的,但是里面的元素看起来还是这样!!!:

list = names.split()
您可以这样保存结果,也可以进行最终清理以删除空字符串

import re
pattern = re.compile(r"[\n\\:']+")
list_of_names = pattern.split(names) 
# ['', 'Mike', 'Mike', 'John', 'John', 'Mike/B', '']
# Quick-tip: Try not to name a list with "list" as "list" is a built-in
您可以这样保存结果,也可以进行最终清理以删除空字符串

import re
pattern = re.compile(r"[\n\\:']+")
list_of_names = pattern.split(names) 
# ['', 'Mike', 'Mike', 'John', 'John', 'Mike/B', '']
# Quick-tip: Try not to name a list with "list" as "list" is a built-in

\\'业务是由mysql逃逸引起的'

如果您有姓名列表,请尝试以下操作:

names = ['\\'Mike\\':\\'Mike\\", ...]

for name in names:
    if "Mike" in name:
        print "Mike is here"

\\'业务是由mysql逃逸引起的'

如果您有姓名列表,请尝试以下操作:

names = ['\\'Mike\\':\\'Mike\\", ...]

for name in names:
    if "Mike" in name:
        print "Mike is here"

这不是你问题的答案,但你可以用一种更“pythonic”的方式测试列表中是否存在元素,比如:
如果l中的“Mike”…
主要问题是:我不知道如何从这个格式化字符串中提取列表……这不是你问题的答案,但是您可以用一种更“pythonic”的方式来测试列表中是否存在元素,比如:
如果l中的“Mike”…
主要问题是:我不知道如何从这个格式化字符串中提取列表…”“业务是由mysql转义引起的”,这是我不知道的。有了这些信息,我可以简单地将“'”拆分出来。感谢“业务是由mysql逃逸引起的”,这是我不知道的。有了这些信息,我可以简单地将“'”拆分出来。谢谢
my_names = ["Tom", "Dick", "Harry"]
names = ['\\'Mike\\':\\'Mike\\", ...]

for name in names:
    for my_name in my_names:
        if myname in name:
        print myname, " is here"