처음 여기 (그리고 프로그래밍 멍청한 놈), 내가 올바른 형식을 얻을 희망!파이썬 목록에있는 문자 두 가지 모양을 인쇄하십시오.
나는 목록에서 원하는 편지가 나타나는 위치를 인쇄하는 기능을 만들려고합니다. 아래 코드는 문자를 찾아서 문자가있는 위치를 인쇄합니다. 즉, 'a'를 검색하면 프로그램은 2 번째 자리 (x + 1)에 응답합니다.
둘 이상의 통화가있는 문자 (예 : 문자 'e')를 검색하는 경우 프로그램에서 두 지점 모두에서 문자를 찾지 만 두 경우 모두 10 번째에 인쇄됩니다 자리.
나는이 사건에서 왜 열 번째와 일흔이어야하는지 알아 내려고하고있다.
# store string in variable
solution = list('can you guess me')
guess = raw_input('What letter do you guess on? ')
# Search list
def search(guess):
nothing = 0
for x in solution:
if x == guess:
print x,
print "is in ",
print solution.index(x) + 1
nothing = 1
if nothing == 0:
print "Couldn't find ",
print guess
search(guess)
과 같이 전자를 선택하는 경우 :
What letter do you think is in the answer? e
프로그램은 출력합니다 : 내가 좋아하는 것
e is in 11
e is in 11
는 이유를 알고. :/
[파이썬 - 왜이 함수는 공백을위한 인덱스를 반환하지 않습니까?] (http://stackoverflow.com/questions/18199949/python-why-is-this-function-not-returning-the -index-for-white-space) –
문자열은 이미 파이썬에서 iterable입니다. 그것들을리스트 (첫 번째 라인)에 캐스팅 할 필요는없고,'.index()'는 문자열에서도 작동합니다. – zopieux