シノップコードからいくつかの気象変数を読み取って抽出する柔軟なPythonスクリプトを作成しようとしています。
これはコードです:
リーリー入力データは次のとおりです:
リーリーただし、次のものが返されます:
リーリー特定の変数を制限すると (グループ 15 まで)、次のエラーが返されます:
リーリーあらゆる種類のスキーマ メッセージを含むスクリプトを作成するにはどうすればよいですか?
変数が 1 つだけ不正な形式である場合でも、行全体を拒否する (または None 文字列に置き換える) 理由が考えられます。
ただし、行内の一部の変数の形式が正しくない場合でも、正しくフォーマットされたすべての変数を抽出したい場合は、リストに対して re.split(', ', line)
を使用して行を分割する必要があります。変数を変換し、各変数を個別に変換/チェックします。残念ながら、re
は各グループではなく式全体に一致します
柔軟な正規表現を使用する必要がある場合は、(?:(4\d{4})|\d*[/] )
グループのような潜在的なフォーマット エラーを考慮する必要があります。
残念ながら、グループの数が増加するため、グループ番号を同じに保つために非キャプチャ グループ演算子 :?
を使用します。扱いにくいと思われる場合は、より汎用的なグループ式 (4[/\d]{4})
を使用することもできます。これは欠損値を許容しますが、後で存在をテストします。 欠落した数値記号「/」、または変換中に例外をキャッチするだけです。
以上がさまざまなメッセージ パターンを読み取るための Python スクリプトの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。