Blenderで アペンドやインポートで名前が重複したマテリアルのついたオブジェクトを読み込むと
「.001」といった具合に名前がかぶらないようにリネームされてマテリアルが作成されるものの
重複元のマテリアルを使用したい場合に 割り当てを変更するスクリプト
import bpy
object = bpy.context.active_object
material_slots = object.material_slots
for slot in material_slots:
mat_name = slot.material.name
if mat_name[-4:] == ".001":
slot.material = bpy.data.materials[mat_name[:-4]]
とりあえず動けばいい程度の書き捨て