当我偶然发现一个奇怪的结果时,我试图减少我的代码占用空间以使其更具可读性。如果我运行以下代码:
$scope.menuClick = function(linkTitle) {
var linkText = angular.element(linkTitle).data('title');
console.log(linkText);
};
我得到以下输出:
但是,当我尝试使用以下内容压缩此代码以减少代码量时:
y1 = np.linspace(1,1000)
y2 = np.linspace(10,1)
c = ["b","g"]
fig, ax = plt.subplots()
ax.plot(y1, c[0])
ax2 = ax.twinx()
ax2.plot(y2, c[1])
for tl in ax.yaxis.get_ticklines():
tl.set_color(c[0])
for ts in ax.yaxis.get_ticklabels():
ts.set_color(c[0])
所有的标记标记都会发生变化,但只有一些标记线(不变的标记线标记为红色)。是否有一些原因可以解释为什么压缩标记导致只有部分变化?
答案 0 :(得分:1)
我猜,ax.yaxis.get_ticklines()
的数量是ax.yaxis.get_ticklabels()
的两倍,所以zip只是在将它们全部绘制之前就停止了,而单个循环则很好。
zip
中解释了INSERT
的这种行为。