Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
解析: 化学種を表す文字列を受け取り、要素と対応する添え字からなるタプルのリストを返す関数を書きます。添字がない場合、添字は 1 にする必要があります。例: 次の入力で関数を呼び出します。
H2SO4
次の出力を返す必要があります。
[('H', 2), ('S', 1), ('O', 4)]
だから私はプロジェクトをやろうとしていますが、それを開始する方法がわかりません
誰でもこれを開始する方法を教えてもらえますか?
次の方法で 90% を達成できます。
In [6]: re.findall(r'([A-Z][a-z]*)(\d*)', 'H2SO4') Out[6]: [('H', '2'), ('S', ''), ('O', '4')]
残りの 10% は、読者の演習として残されています (結局、これは宿題です)。
ヒント: 単純なリスト内包表記で残りの作業を行うことができます。