文字列は次のように表されます。
str = '1,1'
これは、以下のようにタプルに変更されます。
p = ('1,1',)
以下に示す表現のようなものが必要です。
(1,1)
このような意味ですか?
s = '1,1'
p = tuple( int(x) for x in s.split(',') )
これにより、タプル要素は整数になります。これは、希望どおりのように見えます。
タプル要素を文字列にしたい場合は、次のように機能するはずです。
p = tuple( s.split(',') )
文字列に実際に引用符が含まれている場合は、それらを削除できますs=s.replace("'")
...
これを行うこともできます:
import ast
s = '1,1'
p = ast.literal_eval(s)
編集:mgilsonの洞察に従って安全になりました。
正規表現を使用できます:
import re
s = '1,1'
int_tuple = tuple(int(s) for s in re.findall('\\d+', s))
Output: (1, 1)