0

ライブラリ lxml を使用してサイトを解析し、次のサイクルを実行しようとしています。

for row in html.xpath("//tr/*"):
    result = row.text
    print(result)

出力を取得します。

8-800-500-1231
John Smith
8-800-600-1245
Tommy Atkins
8-800-800-8314
Joe Blow

しかし、どうすればこのような出力を得ることができますか?

["8-800-500-1231", "John Smith"], ["8-800-600-1245", "Tommy Atkins"], ["8-800-800-8314", "Joe Blow"]
4

1 に答える 1

2

次のリスト内包表記を試してください。

list_vars = [
    "8-800-500-1231",
    "John Smith",
    "8-800-600-1245",
    "Tommy Atkins",
    "8-800-800-8314",
    "Joe Blow"
]

print [list(var) for var in zip(list_vars[::2], list_vars[1::2])]

リストではなくタプルとして保持する方が良いと思います。それらをタプルとして保持したい場合は、これを行うことができます:

>>> zip(list_vars[::2], list_vars[1::2])
[('8-800-500-1231', 'John Smith'), ('8-800-600-1245', 'Tommy Atkins'), ('8-800-800-8314', 'Joe Blow')]
于 2013-10-20T20:05:04.090 に答える