Change diffuse color for all selected objects in scene with python So what I'm trying to do is use the "bpy.context.selected_objects" and get the material index from it somehow but I have no experience coding in python and I want to use that in "mat = (Here)" so I can then use "mat.diffuse_color" to change all the materials colors to the same color.

I know it's kinda like asking someone to write code for me but to me it only seems like I need help with 1 line and I don't want to learn a new language just to execute 1 script and likely never use it again. I just really need to change all the material colors because I have a large scene with over 1000 objects and all together there are over 250 materials so doing it manually is a very lengthy process as I have 8 more scenes similar to it.

Note: I can't make them the same material as they have textures applied to them.
You don't have to access the material index, since you have access to an object's active material. This will do what you're aiming for:



import bpy

r,g,b = (0.1, 0.5, 0.7) # Set color RGB value

# Iterate over all the selected objects
for o in bpy.context.selected_objects:
    # Set the active materials diffuse color to the specified RGB
    o.active_material.diffuse_color = (r,g,b)