2012-12-12 10 views
0

사용자 입력 후 변수를 만드는 방법이 있습니까? 오히려 여러 것. 예를 들어, 책에 어떤 페이지가 있는지 기록하는 간단한 프로그램을 작성하고 있지만 사용자가 필요로하는만큼 많은 책을 기록하고 싶습니다. 예를 들어, 프로그램은 사용자에게 북마크를 기록 할 책의 수를 묻습니다. 사용자가 5를 입력하면 5 개의 무작위로 명명 된 변수가 만들어지고 나중에 다시 읽을 수 있습니다. 나는 모든 것을 독자적으로 작성해야한다. 그러나 나는 알고 있어야한다. 사용자 입력으로부터 변수를 생성하는 방법이 있는가? 그렇다면 어떻게해야 할까?사용자 입력시 변수 만들기

+1

대신 목록을 사용하는 것이 어떻습니까? – squiguy

+0

무작위로 명명 된 변수 5 개를 만들지 마십시오! 길이 5의 목록에 넣으십시오! –

+1

또는 사전? 임의로 생성 된 이름을 키로 사용하고 값 목록에 대한 책갈피 목록을 사용하십시오. –

답변

3

올바른 생각이 들기는하지만 잘못된 구현입니다.

newlist = [] 
for i in range(pages): 
    newlist.append(<variable>) 

을 그리고 그들을 액세스 :하십시오 list 대신 시도

newlist[slot] 

편집 : 주석 기 제안, 당신은 너무 dict를 사용할 수 . 유용합니다.

mydict = {} 
books = input().split(", ") 
for book in books: 
    mydict[book] = <variable> 

이 짧은 프로그램은 좋아하는 그런

cool book, to kill a mockingbird, book of evil 

의 형태로 당신에게 입력 책을하게 사용합니다 :

mydict['to kill a mockingbird'] 

이 변수에 액세스 할 수 있습니다.

+0

newlist가 제목이나 다른 책 식별자와 같은 키가있는 사전 일 경우 아무런 제한이 없습니다 (메모리 제외)./성능 제한)을 책의 수에 적용 할 수 있으며 id에서 book으로의 매핑을 별도로 기록 할 필요가 없습니다. –

+0

@ sr2222 추천을 추가했습니다. –

0

raw_input을 S = ('->') -> 10

그런 것

회 반복 10 회 반복의 수에 대한 간단한. 입력을 보관할 배열 또는 사전을 만듭니다.

0

예, 아래 방법을 참조하십시오. 많은 사람들은 합법적 인 이유로 보통 그렇게하지 말아야한다고 주장 할 것입니다.

globals()['variable'] = 42 
print variable