Open file browser with python
Add a StringProperty to your operator, then set its subtype to either FILE_PATH or DIR_PATH. For example, this bit of code in my addon:

class OHA_QuickLink_Props(bpy.types.PropertyGroup):
    root_folder = StringProperty(
        name="Root Folder",
        description="Only .blend files two levels below this folder will be listed.",
        subtype="DIR_PATH",
        update=update_oha_quicklink_root_folder)


Blender 2.8x:

class OHA_QuickLink_Props(bpy.types.PropertyGroup):
    root_folder : StringProperty(
        name="Root Folder",
        description="Only .blend files two levels below this folder will be listed.",
        subtype="DIR_PATH",
        update=update_oha_quicklink_root_folder)


yields the following text field when drawn: