文字列からタプルをパースする?
2023-10-23 12:53:56
質問
例えば、タプルがあるべき姿と同じ形の文字列があるとします。
"(1,2,3,4,5)"
. これを実際のタプルに変換する最も簡単な方法は何でしょうか?私がしたいことの例は次のとおりです。
tup_string = "(1,2,3,4,5)"
tup = make_tuple(tup_string)
実行するだけ
tuple()
を実行するだけでは、全体が一つの大きなタプルになります。一方、私がやりたいことは、文字列をタプルとして理解することです。正規表現を使えばいいのは分かっているのですが、もっとコストのかからない方法があればと思います。アイデアはありますか?
どのように解決するのですか?
それは 既に存在する !
>>> from ast import literal_eval as make_tuple
>>> make_tuple("(1,2,3,4,5)")
(1, 2, 3, 4, 5)
コーナーケースに注意すること
>>> make_tuple("(1)")
1
>>> make_tuple("(1,)")
(1,)
入力フォーマットがここでいうPythonと異なる場合、そのケースを個別に処理する必要があります。
tuple(int(x) for x in tup_string[1:-1].split(','))
.
関連
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] バイトを文字列に変換する
-
[解決済み] 列の値に基づいてDataFrameから行を選択するにはどうすればよいですか?
-
[解決済み] 文字列をfloatやintにパースするにはどうしたらいいですか?
-
[解決済み] Pythonで文字列の部分文字列を取得するにはどうすればよいですか?
-
[解決済み] Pythonで文字列を小文字にするには?
-
[解決済み] モジュールの関数名(文字列)を使って、モジュールの関数を呼び出す。
-
[解決済み】文字列をdatetimeに変換する
-
[解決済み】なぜPythonはこのJSONデータをパースできないのですか?[終了] PythonがこのJSONデータをパースできないのはなぜですか?
-
[解決済み] Pythonのキャッシュライブラリはありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Pandasのデータフレームでタプルの列を分割するにはどうしたらいいですか?
-
[解決済み] 2つの線分が交差しているかどうかを確認するにはどうすればよいですか?
-
[解決済み] 辞書のキーと値を交換するにはどうすればよいですか?
-
[解決済み] Pythonの要素別タプル演算(sumなど
-
[解決済み] Pandasの'Freq'タグにはどのような値が有効ですか?
-
[解決済み] 文字列のリストを内容に基づいてフィルタリングする
-
[解決済み] Pythonでマルチプロセッシングキューを使うには?
-
[解決済み] Pythonで、ウェブサイトが404か200かを確認するためにurllibをどのように使用しますか?
-
[解決済み] if 節の終了方法
-
[解決済み] Django filter queryset __in for *every* item in list