[教學]初見Maya函式return的類型

更新於 2024/12/05閱讀時間約 2 分鐘
如果是對maya有興趣,為了控制maya而學習python的人,初入maya的python世界應該會一頭撞上這道牆。
初學python的人應該也跟我一樣,會知道python有一大堆酷炫的第三方函式庫可以用,使用一段時間後自然而然就會習慣這些函式庫的使用方式,許多函式庫設計得非常智慧非常易用。但我們maya作為3D業界的標竿軟體,就是比較獨特一點…
可以先試想一下,假設要用某個函式取得被選中的圖檔的名稱,該函式正常來說該返回給你甚麼?
可以來看下列例子:
import pymel.core as pm

# 取得選擇到的物件名稱(單選) , 並print出該物件的translate屬性
obj = pm.ls(sl=True)
obj_pos = pm.getAttr(obj+".translate")
print(obj_pos)
但這時maya只會吐回來一句錯誤
# Error: TypeError: file <maya console> line 5: can only concatenate list (not "str") to list #
很顯然getAttr方法只接受字串作為參數輸入,那問題肯定出在obj身上,這時如果你用type查詢的話…
<type 'list'>
maya會告訴你他是list,這也是在英文討論區常常會看到的抱怨,maya總是會把返回的資料包在tuple或是list裡,即使一次只處理一個東西也是如此,深入之後還會發現在list裡面包tuple等等的奇怪問題。
回到程式碼,只要我們簡單修正:
import pymel.core as pm

# 加上索引值
obj = pm.ls(sl=True)[0]
obj_pos = pm.getAttr(obj+".translate")
print(obj_pos)
即可成功導出並取得參數
maya腳本編輯器成功顯示取得的參數
如果是遇到要批次處理的問題,直接使用list也沒什麼太大的問題,但切記maya很喜歡把資料型態包成list,如果程式跑不起來不仿可以朝這問題思考看看。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
寫作投資永遠不嫌晚,這是雙寶老爹的第#163篇關於加密貨幣教學文章,文未還有更多精彩的教學內容!
Python 是一個功能強大的程式語言,提供了非常直觀的檔案處理方式。無論是處理數據檔案、讀取日誌文件,還是生成報表,檔案讀寫操作都是程式開發中的重要環節。這篇文章將帶你深入了解如何使用 Python 操作檔案,包括讀取和寫入、檔案模式選擇以及上下文管理器的使用。
在這篇教學中,我們將深入介紹 Python 的控制流程,包括 if-else 判斷、for 和 while 迴圈、break 和 continue 語句的使用,以及如何定義函數並進行參數傳遞。這些概念都是撰寫 Python 程式時的基礎知識,掌握它們將幫助你編寫更清晰、有效的程式碼。
Thumbnail
冬天要到了,你有在計畫寒假的出遊行程嗎?還沒的話就趕快來看看這篇日本星野渡假村滑雪團的文章介紹,嘗試看看不同的旅遊方式吧!行程帶你入住舒適的星野度假村,並且幫你處理從機場到深山住宿的交通,滑雪裝備、門票跟課程也一次幫你搞定。這麼方便省力的日本跟團還要等甚麼?一起來跟著AsiaYo看看行程有哪些細節吧
Thumbnail
人的一生就是不斷的在學習,你有沒有能力不斷的學習、獲得新能力,是你跟別人拉開差距的關鍵。本書教你如何利用大學4年培養真正的實力?讓你瞭解超級學霸都是如何學習的...
Thumbnail
上課囉! 今天來分享一個用5分K放空的教學,用K棒的價格與成交量來判斷放空與回補的位置。 股價連續兩日漲停而且價漲量增,第三天開盤爆更大量,若大盤當天走勢偏弱,個股價格與成交量出現背離現象可以等一根黑K出現,等待下一根K棒收盤跌破此黑K低點進場空單,K棒"收盤價"站上此價位停損, 後續K
Thumbnail
打好基本功以後,再來學習更快的處理步驟,這樣就可以更輕鬆地完成電子書的製作囉!
Thumbnail
此篇文章希望透過步驟式教學,幫助對電子書製作有興趣的朋友,成為自助出版者。
Thumbnail
要有效使用ChatGPT,透過小樣本學習法引導它認識特定文案風格。例如,基於“青春”主題,生成描述青春活力的文案。您給出了一系列描述青春的句子,充滿浪漫和冒險精神。這些句子旨在指導GPT產出相似風格的內容。當您提供新主題時,GPT將試圖模仿此風格。
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
寫作投資永遠不嫌晚,這是雙寶老爹的第#163篇關於加密貨幣教學文章,文未還有更多精彩的教學內容!
Python 是一個功能強大的程式語言,提供了非常直觀的檔案處理方式。無論是處理數據檔案、讀取日誌文件,還是生成報表,檔案讀寫操作都是程式開發中的重要環節。這篇文章將帶你深入了解如何使用 Python 操作檔案,包括讀取和寫入、檔案模式選擇以及上下文管理器的使用。
在這篇教學中,我們將深入介紹 Python 的控制流程,包括 if-else 判斷、for 和 while 迴圈、break 和 continue 語句的使用,以及如何定義函數並進行參數傳遞。這些概念都是撰寫 Python 程式時的基礎知識,掌握它們將幫助你編寫更清晰、有效的程式碼。
Thumbnail
冬天要到了,你有在計畫寒假的出遊行程嗎?還沒的話就趕快來看看這篇日本星野渡假村滑雪團的文章介紹,嘗試看看不同的旅遊方式吧!行程帶你入住舒適的星野度假村,並且幫你處理從機場到深山住宿的交通,滑雪裝備、門票跟課程也一次幫你搞定。這麼方便省力的日本跟團還要等甚麼?一起來跟著AsiaYo看看行程有哪些細節吧
Thumbnail
人的一生就是不斷的在學習,你有沒有能力不斷的學習、獲得新能力,是你跟別人拉開差距的關鍵。本書教你如何利用大學4年培養真正的實力?讓你瞭解超級學霸都是如何學習的...
Thumbnail
上課囉! 今天來分享一個用5分K放空的教學,用K棒的價格與成交量來判斷放空與回補的位置。 股價連續兩日漲停而且價漲量增,第三天開盤爆更大量,若大盤當天走勢偏弱,個股價格與成交量出現背離現象可以等一根黑K出現,等待下一根K棒收盤跌破此黑K低點進場空單,K棒"收盤價"站上此價位停損, 後續K
Thumbnail
打好基本功以後,再來學習更快的處理步驟,這樣就可以更輕鬆地完成電子書的製作囉!
Thumbnail
此篇文章希望透過步驟式教學,幫助對電子書製作有興趣的朋友,成為自助出版者。
Thumbnail
要有效使用ChatGPT,透過小樣本學習法引導它認識特定文案風格。例如,基於“青春”主題,生成描述青春活力的文案。您給出了一系列描述青春的句子,充滿浪漫和冒險精神。這些句子旨在指導GPT產出相似風格的內容。當您提供新主題時,GPT將試圖模仿此風格。