使用:
cur.execute(SQL)
response= cur.fetchall() //response is a LOB object
names = response[0][0].read()
我有以下 SQL 响应作为字符串names
:
'Mike':'Mike'
'John':'John'
'Mike/B':'Mike/B'
正如你所看到的,它是格式化的。它实际上是格式化的:\\'Mike\\':\\'Mike\\'\n\\'John\\'...
等等
为了检查例如Mike
是否在列表中至少一次(我不在乎多少次,但至少一次)
我想有这样的东西:
l = ['Mike', 'Mike', 'John', 'John', 'Mike/B', 'Mike/B'],
所以我可以简单地遍历列表并询问
for name in l:
'Mike' == name:
do something
任何想法,我怎么能做到这一点?
非常感谢
编辑:
当我做:
list = names.split()
我收到的列表几乎是我想要的,但里面的元素看起来仍然是这样的!
list = ['\\'Mike\\':\\'Mike\\", ...]
names = ['\\'Mike\\':\\'Mike\\", ...]
for name in names:
if "Mike" in name:
print "Mike is here"
\\ '业务是由 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"
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
您可以以这种方式保留结果或进行最终清理以删除空字符串
clean_list = list(filter(lambda x: x!='', list_of_names))
本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处
评论列表(3条)