나는이 방법이 : 그것은 나에게 올바른 결과를 제공적은 코드로 동일한 코드를 작성하는 방법. 파이썬
def get_user_info(self):
month = choice(range(1,13))
day = choice(range(1,29))
year = choice(range(1966,1994))
f_name = self.assign_name('FirstNames')
l_name = self.assign_name('LastNames')
e_address = f_name+l_name+year.__str__()+day.__str__()
password = f_name+l_name+'0008383'
user_info = dict({
'month' : month,
'day' : day,
'year' : year,
'f_name' : f_name,
'l_name' : l_name,
'e_address' : e-address,
'password' : password
})
print user_info
을,하지만 두 번 같은 코드를 작성하는 것 같은 나는 입력합니다. 그래서 내 질문에 먼저 변수를 만들지 않고 동일한 결과를 얻고 dict() 넣을 방법입니다.
참고 : 다른 키 : 값 쌍에서 f_name과 l_name 등을 사용해야합니다.
솔직히 말해서, 이것은 최적화를 바라 보는 잘못된 것입니다. –
글쎄,'{expr1 : expr2, ..}'에서 (이미'{} '가 수행되기 때문에'dict'이 필요하지 않습니다.)'expr1'과'expr2'는 모두 * 임의의 표현식 *입니다. 그것들은 문자열 리터럴이나 변수 이름 일 필요는 없습니다. 두 종류의 표현 자체가 필요합니다. (따라서 표현식이기도 한'choice (range (1,13)) '가 적절히 대체 될 수 있습니다. , 복합 표현의 부작용을 막는 데있어 신중을 기합니다.) –
이 질문은 [http://codereview.stackexchange.com/](http://codereview.stackexchange.com/) –