我希望明确替换常见的装饰器习语。
多年来,许多代码库中都有一个聪明的单行装饰器copy-pasted没有解释:
decorator_with_args = lambda decorator: lambda *args, **kwargs: lambda func: decorator(func, *args, **kwargs)
我的问题恰恰是that it is clever:它没有解释它的作用,有许多未被命名的活动部分,它是非显而易见的,缺乏表现力。
即使是2005年Peter Hunt的widely-cited ActiveState recipe也没有提供关于这在内部做什么的线索,也不知道它的部分名称应该是什么。
我希望看到更多Pythonic,更明确和富有表现力的替代品,其组成部分易于理解。
答案 0 :(得分:1)
由于我不太清楚原件的细节是如何起作用的,所以我可能有这个错误:
function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 4,
center: {lat: -33, lng: 151}
});
var image = 'filePath' + 'usersPhoto.png';
var beachMarker = new google.maps.Marker({
position: {lat: -33.890, lng: 151.274},
map: map,
icon: image
});
}
请为这些部分建议更好的名称,并指出任何错误(即与原始部分不同的行为)。