Нет встроенного, но вы можете сделать это довольно просто с пониманием генератора:
s= "Name1=Value1;Name2=Value2;Name3=Value3"
dict(item.split("=") for item in s.split(";"))
[Изменить] Из вашего обновления вы указываете, что вам, возможно, придется обрабатывать цитаты. Это усложняет ситуацию, в зависимости от того, какой именно формат вы ищете (какие символы кавычек принимаются, какие escape-символы и т. Д.). Вы можете посмотреть на модуль CSV, чтобы увидеть, может ли он охватить ваш формат. Вот пример: (Обратите внимание, что API немного неуклюже для этого примера, поскольку CSV предназначен для итерации последовательности записей, поэтому я выполняю вызовы .next (), чтобы просто посмотреть на первую строку. удовлетворить ваши потребности):
>>> s = "Name1='Value=2';Name2=Value2;Name3=Value3"
>>> dict(csv.reader([item], delimiter='=', quotechar="'").next()
for item in csv.reader([s], delimiter=';', quotechar="'").next())
{'Name2': 'Value2', 'Name3': 'Value3', 'Name1': 'Value1=2'}
В зависимости от точной структуры вашего формата вам может потребоваться написать собственный простой анализатор.