2016-04-25 8 views
1

このタイプのテーブルはどのように解析するのですか?異常なテーブルを解析する

https://primes.utm.edu/lists/small/10000.txt

     The First 10,000 Primes 
        (the 10,000th is 104,729) 
    For more information on primes see http://primes.utm.edu/ 

    2  3  5  7  11  13  17  19  23  29 
31  37  41  43  47  53  59  61  67  71 
73  79  83  89  97 101 103 107 109 113 

これらを分離またはXMLは、構造化番号をコンマされていません。それらをリストに読み込む方法を知っていますか?

+0

に分割されますので、これは動作します

、外部参照サイトだけでなく、オリジナルへのリンクからいくつかのサンプルデータを含めてください - 編集されたバージョンのように。 (私は、SOのMarkDown処理によって「飲み込まれた」各行の先頭に4つの余分なスペースがあることに注意してください)。 –

答えて

3

テーブルの構造は、データが4行目から始まり、最後の1行で終了することを知ることによって解析できます。さらに、テーブル全体は整数の内容を持っています。例:

# Using the requests HTTP client library 
    import requests 
    # Get data from HTTP request 
    data = requests.get("http://primes.utm.edu/lists/small/10000.txt").text 
    # Nested list comprehension: Split data into lines, consider from fourth line to second last, then split those lines into columns which will be evaluated as integers. 
    [[int(e) for e in l.strip().split()] for l in data.split('\n')[4:-2]] 

Voilà。暗黙のsplitメソッドは、将来的になど、タブ、スペースのグループとして、空白

関連する問題