質問編集履歴

1

試したことを追加しました

2023/05/31 03:57

投稿

castlemist
castlemist

スコア10

test CHANGED
@@ -1 +1 @@
1
- スクレイピングしてきた複数のリストの要素数を揃えたい
1
+ スクレイピングしてきた複数のリストの要素数を揃えるには?
test CHANGED
@@ -34,7 +34,7 @@
34
34
 
35
35
  ### 発生している問題
36
36
  - リストそれぞれのリストの要素数が異なるため、zip関数が回せていない
37
-
37
+ - 商品のコメント数が0だった場合、コメント数を囲っているliタグがそもそも存在していないため、リストの要素数がそろわない
38
38
  ### 該当のソースコード
39
39
 
40
40
  ```Python3
@@ -73,11 +73,18 @@
73
73
  for i, j, k in zip(names, prices, comments):
74
74
  print(f'{i}の価格は{j}円です。コメントは{k}件です。')
75
75
  ```
76
-
76
+ ### 試したこと
77
+ リストcommentsに対し、len関数を使用した条件分岐を設定し、条件が一致した場合appendメソッドでリストの要素数を調節した。
78
+ しかし、リストcomments[1, 0, 0]となってしまうので、理想の[0, 1, 0]にはならなかった。
79
+ ```Python3
80
+ # 30~32行目挿入
81
+ for i in range(len(names)):
82
+ if len(comments) != len(names):
83
+ comments.append(0)
84
+ ```
77
85
 
78
86
  ### 補足情報(FW/ツールのバージョンなど)
79
87
  Python 3.10.6
80
88
  beautifulsoup 4.12.2
81
89
  Windows11
82
90
  VS Code
83
-