[問題] 一次傳多個 keyword 給 function
我在寫 VPython 時,想要畫很多有類似屬性的物體
可能就會寫出像下面這樣的東西
cone(pos=(0,3,0), axis=(0,-3,0), material=materials.wood, color=color.orange
frame=f)
sphere(pos=(0,3,0), material=materials.wood, color=color.orange
frame=f)
box(pos=(0,-.25,0), size=(4,.5,4),material=materials.wood, color=color.orange
frame=f)
其中黃色部分是完全一樣的
因此我想把他包成變數,如果要修改值的話也只要改那個變數,不用到處改
例如:
params1 = {'material': materials.wood, 'color':color.orange}
params2 = {'frame': f}
cone(pos=(0,3,0), axis=(0,-3,0), **params1, **params2)
sphere(pos=(0,3,0), **params1, **params2)
box(pos=(0,-.25,0), size=(4,.5,4), **params1, **params2)
但上面那個方法是 Syntax Error
原因是 **keywords 後不能再有其他參數
我實在不想每個都寫這麼長而且要一個一個改值...
請問有比較好的寫法嗎?
--
光明 的背後 是 黑暗
黑暗 的背後 還是 黑暗
由此可知 黑暗 > 光明 Q.E.D.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.24.38
推
07/21 03:36, , 1F
07/21 03:36, 1F
Python 近期熱門文章
PTT數位生活區 即時熱門文章