python大神,这是你上次给我的答案,有个问题不知道啊,求解答
>>>str1='hchaha'>>>str2='hahahb'>>>>>>cmplst=zip(list(str1),list(str2))>>>print''.joi...
>>> str1 ='hchaha'
>>> str2 ='hahahb'
>>>
>>> cmplst = zip(list(str1), list(str2))
>>> print ''.join([a for a, b in cmplst if a==b])
hhah
>>>
''.join([a for a, b in cmplst if a==b]) 这个咋理解啊? join我知道,可是你后面的看不懂啊([a for a, b in cmplst if a==b]),打扰了,亲。
题目:
str1 ='hchaha'
str2 ='hahahb'
比较两个字符串,找到一样的,(不能去重复的) 展开
>>> str2 ='hahahb'
>>>
>>> cmplst = zip(list(str1), list(str2))
>>> print ''.join([a for a, b in cmplst if a==b])
hhah
>>>
''.join([a for a, b in cmplst if a==b]) 这个咋理解啊? join我知道,可是你后面的看不懂啊([a for a, b in cmplst if a==b]),打扰了,亲。
题目:
str1 ='hchaha'
str2 ='hahahb'
比较两个字符串,找到一样的,(不能去重复的) 展开
3个回答
2014-11-14
展开全部
将[a for a, b in cmplst if a==b] 可换成:[x for x, y in cmplst if x==y] ,估计这仁兄没写清楚你才混淆a,b与字符串的ab。
cmplst是个迭代器,用list()可看到内容为:[(h,h),(c,a),(h,h),(a,a)....]
可简译为:若列表中的元组(如:(h,h),(a,a)中的两元素相等,就将元组中的第一个元素放在列表中。
这详细解释起来很费字。。,你还是看下基本语法。
cmplst是个迭代器,用list()可看到内容为:[(h,h),(c,a),(h,h),(a,a)....]
可简译为:若列表中的元组(如:(h,h),(a,a)中的两元素相等,就将元组中的第一个元素放在列表中。
这详细解释起来很费字。。,你还是看下基本语法。
展开全部
cmplst是一个由tuple组成的list: [(h,h),(c,a),(h,h),(a,a)....]
[a for a, b in cmplst] 用于推导出列表中的第1个元素字母,因为每个tuple有两个字母,此处用a,b分别作为临时变量,此时为: ['h','c','h','a','h','a']
[a for a, b in cmplst if a==b] 对前述步骤加以限制,只返回tuple中两个字母一样的元素
''.join()用于将返回的结果连结为字符串
[a for a, b in cmplst] 用于推导出列表中的第1个元素字母,因为每个tuple有两个字母,此处用a,b分别作为临时变量,此时为: ['h','c','h','a','h','a']
[a for a, b in cmplst if a==b] 对前述步骤加以限制,只返回tuple中两个字母一样的元素
''.join()用于将返回的结果连结为字符串
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
朋友,我来告诉你答案!去google搜搜\“python五子棋人机对弈\”吧。这类的代码很多的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询