object.attribute を記述する Python 文字列が与えられた場合、属性の名前空間を属性から分離するにはどうすればよいですか?
望ましい例:
ns_attr_split("obj.attr") => ("obj", "attr")
ns_attr_split("obj.arr[0]") => ("obj", "arr[0]")
ns_attr_split("obj.dict['key']") => ("obj", "dict['key']")
ns_attr_split("mod.obj.attr") => ("mod.obj", "attr")
ns_attr_split("obj.dict['key.word']") => ("obj", "dict['key.word']")
注: 独自の文字列パーサーを作成することも 1 つの選択肢であることは理解していますが、これに対するより洗練された解決策を探しています。独自の文字列パーサーをロールすることは、「.」の rsplit ほど単純ではありません。特定のキーワードに名前空間区切り文字が含まれる可能性がある上記の最後のオプションのためです。