Create a new render layer with Scene.render.layers.new()
As a rule of thumb, I always use an API method such as new_render_layer = scene.render.layers.new(name)
in preference to the operator, in this case bpy.ops.scene.render_layer_add()
.
Test code, creates a new render layer named "Characters". Makes it the active render layer. Sets only scene layer 0 (the first) as included, turns off zmask, and, just for fun, makes true for every odd zmask layer.
import bpy
context = bpy.context
scene = context.scene
new_rl = scene.render.layers.new("Characters")
# make active
scene.render.layers.active = new_rl
# set only layer 0 true
new_rl.layers = [not i for i in range(20)]
# don't use z mask
new_rl.use_zmask = False
# every odd zmask layer
new_rl.layers_zmask = [not i % 2 for i in range(20)]
See RenderLayer
docs for more render layer properties to set.