요소 목록을 결합한 다음 마지막 문자없이 해당 결합을 반환하는 함수를 작성하려고합니다.
이것이 내가 지금까지 가지고있는 것입니다.
n = ["Andy", "Warhol"]
def littery(word):
total = ''
for i in range(len(word)):
total = total + word[i]
return total
littery(n)
a = littery(n)[0:len(littery(n))-1]
print
프로그램은 다음을 인쇄합니다. AndyWarho
이 작업을 수행하는 더 좋은 방법이 있습니까? 다음을 사용하지 않고 함수 내에서이 작업을 수행하고 싶습니다.a = littery(n)[0:len(littery(n))-1]
올바르게 수행하려는 작업을 이해하면 다음과 같이 할 수 있습니다.
def littery(lst):
return ''.join(lst)[:-1]
>>> littery(['Andy', 'Warhol'])
'AndyWarho'
또는의 각 요소에서 마지막 요소를 제거 lst
하려면 다음을 수행 할 수 있습니다.
def littery(lst):
return ''.join(word[:-1] for word in lst)
>>> littery(['Andy', 'Warhol'])
'AndWarho'
또는 호출에서 목록을 작성하지 않으려면 다음을 수행 할 수 있습니다.
def littery(*lst):
return ''.join(lst)[:-1]
>>> littery('Andy', 'Warhol')
'AndyWarho'
또는 다른 방법으로 수행하려는 경우 다음을 수행 할 수 있습니다.
def littery(*lst):
return ''.join(lst[:-1] + [lst[-1][:-1]])
또는 어떤 시점에서 슬라이스가 다시 필요할 수있는 경우 :
last = slice(-1)
def littery(*lst):
return ''.join(lst)[last]
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다