質問編集履歴
1
試したことを追加しました
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
|
-
|