On 2020-08-11 02:20, Ganesh Pal wrote:
> The possible value of stat['server2'] can be either (a) "'/fileno_100.txt'" or (b) '/fileno_100.txt' . > How do I check if it the value was  (a) i.e string started and ended with a quote , so that I can use ast.literal_eval()
> >>> import ast
> >>> stat = {}
> >>> stat['server2']  = "'/fileno_100.txt'"
> >>> stat['server2'] = ast.literal_eval(stat['server2'])
> >>> print  stat['server2']
> /fileno_100.txt
> >>>
> >>> if stat['server2'].startswith("\"") and stat['server2'].endswith("\""):
> ...    stat['server2'] = ast.literal_eval(stat['server2'])
> ...
> >>>
> I tried startswith() and endswith(), doesn't seem to work ?. Is there a simpler way ?
>

I gave 2 possible solutions. Try the first one, which was to use the .strip method to remove the quotes.

The reason that startswith and endwith don't seem to work is that you're checking for the presence of " (double quote) characters, but, according to what you've posted, the strings contain ' (single quote) characters.

[snip]

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to