How can I print the string of a parameter from a property?
Yes. Once registered you can use bl_rna.properties to access the name, its type, the items, the description etc... I'd suggest use the python console to test:
&gt;&gt;&gt; test_items = [
...     (&quot;RED&quot;, &quot;Red&quot;, &quot;&quot;, 1),
...     (&quot;GREEN&quot;, &quot;Green&quot;, &quot;&quot;, 2),
...     (&quot;BLUE&quot;, &quot;Blue&quot;, &quot;&quot;, 3),
...     (&quot;YELLOW&quot;, &quot;Yellow&quot;, &quot;&quot;, 4),
... ] 

&gt;&gt;&gt; bpy.types.Scene.my_enum = bpy.props.EnumProperty(name=&quot;Foo&quot;, items=test_items)
&gt;&gt;&gt; bpy.types.Scene.bl_rna.properties['my_enum'].name
'Foo'
&gt;&gt;&gt; bpy.types.Scene.bl_rna.properties['my_enum'].enum_items[0]
&lt;bpy_struct, EnumPropertyItem(&quot;RED&quot;)&gt;
&gt;&gt;&gt; bpy.types.Scene.bl_rna.properties['my_enum'].enum_items[0].name
'Red'

In case of an operator property, I'd suggest read the values from the operators annotation dict:
class SimpleOperator(bpy.types.Operator):
    &quot;&quot;&quot;Tooltip&quot;&quot;&quot;
    bl_idname = &quot;object.simple_operator&quot;
    bl_label = &quot;Simple Object Operator&quot;
    
    my_prop: bpy.props.StringProperty(name=&quot;foo&quot;)

    def execute(self, context):
        
        # via bl_rna
        print (self.properties.bl_rna.properties['my_prop'].name)
        
        # using annotations
        print (self.__annotations__.items())
        print (self.__annotations__['my_prop'][1]['name'])
        
        return {'FINISHED'}