두 개의 문자열 인수를 사용하고 두 인수 문자열에있는 문자 만 포함하는 문자열을 반환해야합니다. 반환 값에는 중복 문자가 없어야합니다. 파이썬 공용 문자열을 중복하지 않고 문자열로 출력
이
내가 무엇을 가지고 있지만, 나는 그것은'ol'
두 개의 문자열 인수를 사용하고 두 인수 문자열에있는 문자 만 포함하는 문자열을 반환해야합니다. 반환 값에는 중복 문자가 없어야합니다. 파이썬 공용 문자열을 중복하지 않고 문자열로 출력
이
내가 무엇을 가지고 있지만, 나는 그것은'ol'
이
s = set()
def letter(x,z):
for i in x:
for f in z:
if i == f:
s.add(i)
letter("hello","world")
print("".join(s))
시도가있는 경우 한 번 일을 인쇄 할 필요가 순서가 중요하지 않다면 각 단어의 문자 수가 set
인 &
교차로를 취할 수 있습니다. join
그것은 단일 문자열로 설정되고 return
입니다.
def makeString(a, b):
return ''.join(set(a) & set(b))
>>> makeString('sentence', 'santa')
'nts'
하면 set
의 몇 가지 이유 (아마도 당신은 하나 또는 문자열의 다른 순서를 유지하려면위한 가방 아닌, 시도 :
def common_letters(s1, s2):
unique_letters = []
for letter in s1:
if letter in s2 and letter not in unique_letters:
unique_letters.append(letter)
return ''.join(unique_letters)
print(common_letters('spam', 'arthuprs'))
합니다 (print()
파이썬 3 가정)
print()는 Python 2.6 이후에서 잘 작동합니다. Python2에서 Python3으로 변환 할 때 문제가 발생하지 않기 때문에 올바른 방법입니다. –
코드 검토에 더 많은 것이 속하는 지 확실하지 않은 경우 ... –
@jmendeth 코드 검토에 속한 것 (이미 명백한 것은 아닙니다) – Dannnno
명확한 것은 또는 무언가를 인쇄하고 있습니까? 양자 모두? 그리고 어떤 언어 기능을 사용할 수 있습니까? 'letter'는 작업에 가장 적합한 이름이 아닙니다 : – Dannnno