0
我試圖減少我的代碼足跡,使我更容易理解,當我偶然發現一個奇怪的結果時。如果我運行下面的代碼:壓縮ticklines不允許更改它們的屬性
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])
我得到以下輸出:
然而,當我嘗試壓縮此使用,以減少下面的代碼量:
for t in zip(ax.yaxis.get_ticklines(),ax.yaxis.get_ticklabels()):
t[0].set_color(c[0]),t[1].set_color(c[0])
所有的tickla bels會改變,但只有一些ticklines(那些不改變的會被標記爲紅色)。是否有一些理由說明,爲什麼只有一些壓縮ticklines會導致更改?