使用列表返回两个名字中的共同字母列表,Python实现
我需要用列表来找出一个名字和姓氏中都有的字母。可是我不能使用集合。现在我有了一些代码,但有点卡住了。我知道我需要用到 in
这个操作符来检查哪些字符在名字和姓氏中。然后把共同的字符添加到一个空列表 common
里。不过我对语法有点困惑,需要一些帮助。
def firstAndLast(first,last):
common = []
if first in last:
print first
first = list(raw_input("Enter first name: "))
last = list(raw_input("Enter last name: "))
firstAndLast(first, last)
3 个回答
-1
在编程中,有时候我们会遇到一些问题,可能是因为代码写得不够好,或者是我们对某些概念理解得不够透彻。比如,有人可能在使用某个库或者框架时,发现它的功能和自己想要的不太一样。这种情况下,最好的办法就是查阅相关的文档,看看别人是怎么解决类似问题的。
另外,编程社区,比如StackOverflow,提供了一个很好的平台,大家可以在这里提问和回答问题。通过这个过程,我们不仅可以找到解决方案,还能学习到其他人的经验和技巧。
总之,遇到问题时,不要着急,先冷静下来,查找资料,向社区求助,通常都能找到解决办法。
def common_name(first,last):
common_char=[]
for i in first:
if i in last:
common_char.append(i)
else:
pass
print(common_char)
common_name("prince","pate")
2
你需要对第一个字符串中的字母进行循环:
for letter in first:
if letter in last:
print letter
不过你可能还要考虑重复字母的问题(比如在“Stephen”和“Colbert”中,“e”会被打印两次),还有字母的大小写(比如在“Samuel”和“Adams”中,“S”和“s”是不同的)。
2
def firstAndLast(firstName, lastName):
common = set(firstName) & set(lastName)
print list(common)
当然可以!请把你想要翻译的内容发给我,我会帮你用简单易懂的语言解释清楚。