如何基于属于对象的数值在Python中对对象进行排序

时间:2014-04-26 01:02:33

标签: python algorithm sorting object

我有一个python程序,可以从html文件中收集有关书籍的信息。这些信息包括重量,大小,形状作者等。我如何编写一段代码,可以将x个书包装在n个盒子中,每个盒子不超过10磅?

我想有两种方法可以解决这个问题,一种方法是按顺序打包每个盒子,然后是< = 10.第二种方法是最有效地打包书籍,这样只有最少的数量好的盒子是必需的。

以下是我收集信息的算法:

import glob
import json
from bs4 import BeautifulSoup

def main():
    data = []
    for filename in glob.iglob('*.html'):
        with open(filename) as f:
            soup = BeautifulSoup(f)

            title = soup.find("span", id="btAsinTitle")
            data.append({
                "title":  title.get_text(),
                "author": title.find_next("a", href=True).get_text(),
                "isbn":   soup.find('b', text='ISBN-10:').next_sibling,
                "weight": soup.find('b', text='Shipping Weight:').next_sibling,
                "price":  soup.find('span', {"class":'bb_price'}).get_text()
            })

    with open("my_output.json", "w") as outf:
        json.dump(data, outf, indent = 1)

main()

0 个答案:

没有答案