不明な点がいくつかありますが、こんな感じでしょうか?
問題の5連続に出た時の処理ですが、何かしらの方法で記憶する必要があります。
今回はリストを使いました。
また処理が複雑に感じるなら関数などで分けてあげるとロジックを組みたてやすいです。
python
1import random
2
3roop_num = 1000
4memory = []
5point = 0
6
7def add_memory(memory, choice):
8 """
9 listに何も収納されていなければ無条件でchoiceを追加
10 listに要素が存在すれば、末尾の要素を確認してchoiceと同じであれば追加
11 そうでなければ要素を全て削除
12
13 """
14 if not memory:
15 memory.append(choice)
16 elif memory[-1] == choice:
17 memory.append(choice)
18 else:
19 del memory[:]
20
21#whileに条件式を書くよりもifにbreak条件を書いた方が個人的にはわかりやすい
22while True:
23 choice = random.choice(["〇", "×"])
24 add_memory(memory, choice)
25
26 if choice == "〇":
27 #choiceが〇で尚且つmemoryの要素数が5以下だった時
28 if len(memory) < 5:
29 ...
30 #choiceが〇で尚且つmemoryの要素が5以上だった時
31 else:
32 ...
33 else:
34 #choiceが×で尚且つmemoryの要素数が5以下だった時
35 if len(memory) < 5:
36 ...
37 #choiceが×で尚且つmemoryの要素が5以上だった時
38 else:
39 ...
40
41 roop_num -= 1
42
43 if roop_num == 0:
44 break
分岐の部分は実装していないので、ご自身で考えてみてください