辞書型にappendしたい

Pythonの辞書型にはappendメソッドは存在しませんが、代わりにキーと値のペアを辞書に追加する方法があります。

以下は、サイズとカラー別の在庫情報を辞書に追加する方法です:

python
from bs4 import BeautifulSoup html = """ <table class="stockList"> <!-- ここにHTMLが入ります --> </table> """ # BeautifulSoupを使用してHTMLを解析 soup = BeautifulSoup(html, 'html.parser') # 在庫情報を格納するための辞書 stock_info = {} # <tr>要素をループ for row in soup.find_all('tr'): # サイズを取得 size = row.find('th', class_='leftLine').get_text().strip() # カラーと在庫情報を取得 for cell in row.find_all('td'): # カラーを取得 color = cell.find_previous_sibling('th').get_text().strip() # 在庫情報を取得 input_tag = cell.find('input') if input_tag: # 在庫情報を格納 stock_status = cell.find(class_='M_stock-status').get_text().strip() # サイズとカラーをキーとして在庫情報を辞書に追加 if size not in stock_info: stock_info[size] = {} if color not in stock_info[size]: stock_info[size][color] = [] stock_info[size][color].append({'value': input_tag['value'], 'status': stock_status}) # 結果を出力 for size, colors in stock_info.items(): print(f"Size: {size}") for color, data_list in colors.items(): print(f" - Color: {color}") for data in data_list: print(f" - Value: {data['value']}, Status: {data['status']}")

このコードでは、辞書型の値がリストになっており、各サイズとカラーの組み合わせに複数の在庫情報がある場合でも、それらをリストに追加しています。

未分類

Posted by ぼっち