有効な集合の表記法のように見えるので、代わりにastモジュールを使用して解析できます。
import ast
mystr = 'myString={"name", "age", "address", "contacts", "Email"}'
tree = ast.parse(mystr)
name = tree.body[0].targets[0].id
values = [val.s for val in tree.body[0].value.elts]
print name, values
# prints: myString ['name', 'age', 'address', 'contacts', 'Email']
編集:入力ファイルの実際の形式に照らして、正規表現を使用してブロックを解析してから、上記のようにブロックを解析するか、以下のように引用符を削除します。
import re
block_re = re.compile(r'v_dims=\{(.*?)\}', re.S)
with open("C:\XXXX\nemo\Test.mrk") as f:
doc = f.read()
block = block_re.search(doc)
[s.strip().strip('"') for s in block.group(1).split(',')]
しかし、おそらく最良の方法は、2つを組み合わせることです。
import ast
import re
with open("C:\XXXX\nemo\Test.mrk") as f:
doc = f.read()
block_re = re.compile(r'v_dims=\{.*?\}', re.S)
tree = ast.parse(block_re.search(doc).group(0))
print [val.s for val in tree.body[0].value.elts]
# ['name', 'age', 'address', 'contacts', 'Email']