파이썬에서 다음 JavaScript 예제와 비슷한 방식으로 함수를 정의 할 수 있습니까? 나는 함수의 사전을 가지고 싶습니다 이후JavaScript에서와 같이 함수를 정의 할 수 있습니까?
var func = function(param1, param2) {
return param1*param2;
};
나는 물어, 나는 먼저 모든 함수를 정의하고 사전에 넣고 싶지 않을 것이다.
다른 사전을 매개 변수로 사용하고 해당 키를 반복하며 다른 사전과 일치하는 키를 찾으면 해당 함수를 해당 값으로 호출하기 때문에 함수 사전을 원한다 매개 변수로 두 번째 사전의. 좋아요 :
def process_dict(d):
for k, v in d.items():
if k in function_dict:
function_dict[k](v)
그런 일을 성취하기위한 더 파이썬적인 방법이 있습니까?
기능이 얼마나 복잡한가요? 귀하의 자바 스크립트 예제는 파이썬에서 lambda로 표현할 수 있습니다 :'lambda p1, p2 : p1 * p2' –
그래서 표현식 (사전 리터럴/생성자) 안에 문장이 필요합니까? 파이썬에서는 불가능합니다. – zch
@zch 아니, 그냥 빈 dict로 시작한 다음 javascript 예제 에서처럼 변수 할당을 수행합니다. 단, 왼쪽면은'function_dict [ "key"]'입니다. –