-1

私はopenpyxl多くの Excel 操作を処理するために使用していますが、同様にファイルを処理するパッケージを探してい.txtます。

以下のような .txt ファイルがあります。これには、表のような形式のデータが含まれています。そこから特殊文字を削除し、元のデータを Excel シートに入れる必要があります。

=============|=============|=============|=============|
    Name     |   Address   |PhoneNumber  |     Age     |
=============|=============|=============|=============|
   Matt      |   B3/24     |  8475968    |    25       |
   John      |   A1-A2 Wing|  3335968    |    44       |

いずれかがあります?

4

3 に答える 3

5

.txt ファイルを「処理」する必要があるのはなぜですか? ほとんどの場合、コマンドを使用してそれらを開き、およびメソッドopen()を使用して読み取り/書き込みを行うことができます。read()write()

Python ドキュメントのファイルの読み取りと書き込みセクションを参照してください。open()コマンドhere から始めます。


特別な形式 ( CSVなど) で記述された txt ファイルがある場合は、 PyPiで適切なモジュールを検索してみてください。この場合、Python には CSV ファイルを適切に処理できる CSV モジュールが組み込まれていることに注意してください。詳細はこちらをご覧ください


投稿を編集した後、 asciitableに行くことができます。これは PyPi にもあり、優れドキュメントがあります。
ただし、このライブラリなしでそれを行うのは難しい言葉のようには見えません (やあ、ただ言うだけです。このモジュールを絶対に使用する必要があります。すばらしく見えます)。ファイルを行ごとに読み取り、各行をパイプで分割します。分割後のセルの内容が=記号のみの場合は、空白行を残します。それ以外の場合は、分割後の行の内容でセルを感じてください。

于 2013-01-06T20:17:07.667 に答える
3

私はあなたがasciitableを試してみることをお勧めします。

于 2013-01-06T20:41:35.513 に答える
2

私はいつもこの種の問題にパンダを使用します、これはあなたが一行であなたのファイルを読む方法です:

from pandas import read_table
data = read_table('table.txt', sep='|', skiprows=[0,2]).dropna(axis=1)

外:

     Name    Address    PhoneNumber  Age
0    Matt    B3/24       8475968     25
1    John    A1-A2 Wing  3335968     44

その後、data ['Name']を使用して列にアクセスし、操作、フィルタリングなどを行います。最後に、data.csv()またはを使用してファイルに書き込みますdata.to_excel()こちらのドキュメント(特にgroupbyセクション)を参照してください。

編集:列名は空白('Name'ではなく'Name')でインポートされるため、次のことも行う必要があります。

data.columns = data.columns.map(str.strip)

その後data['Name']data['Address']などは正しく動作します。.dropna()ファイルに区切り文字'|'があるため、誤ってインポートされた最後の空の列を削除するために必要です。各行の終わりに。.dropna()何が起こるかを見ずに試すことができます。

于 2013-01-06T21:06:51.083 に答える