2024年6月16日 星期日

(AI協作)讓ChatGPT生成彩虹鳥童話故事再生成Python控制程式

前一篇文章:(AI協作)用Python設計亮亮鼠控制程式再運用ChatGPT產生童話故事

範例一:

提示詞:

彩虹鳥有那些能力呢?

ChaptGPT生成的內容:

在遙遠的魔法森林裡,住著一隻名叫亮亮的小老鼠和一隻美麗的小鳥,名叫彩虹。彩虹不僅以她五彩斑斕的羽毛和動聽的歌聲而聞名,她還擁有三項神奇的能力,讓她在森林中獨一無二。

第一項能力是彩虹能夠治癒傷痛。她的羽毛中蘊含著魔法,只要輕輕觸碰受傷的動物,它們的傷口就會迅速癒合。不論是身體上的創傷還是心靈上的痛楚,彩虹的羽毛都能帶來安慰和治療。

第二項能力是彩虹能夠預知天氣變化。每當暴風雨即將來臨或是陽光燦爛的日子即將到來,彩虹的羽毛會隨著天氣的變化而改變顏色。這項能力讓森林裡的動物們能夠提前準備,避開惡劣的天氣,或者享受美好的時光。

第三項能力是彩虹的歌聲具有魔力。當她唱起歌來,所有聽到她歌聲的動物都會感到心情愉快,煩惱和憂慮會隨之消散。她的歌聲能夠喚醒沉睡的花朵,使植物茁壯成長,讓整個森林都充滿生機。

一天,亮亮在森林裡遇見了彩虹,被她的美麗和善良深深吸引。亮亮決定用自己的能力來保護和幫助彩虹,兩隻動物很快成為了密不可分的好朋友。

有一天,一場突如其來的暴風雨襲擊了森林,彩虹的羽毛變成了深紫色,預示著危險的來臨。亮亮立即爬到彩虹的樹下,用閃燈發出警告信號,提醒其他動物們避開風暴。彩虹則用她的歌聲安撫著動物們的情緒,讓大家在驚恐中找到一絲平靜。

暴風雨過後,彩虹和亮亮一起巡視森林,治癒受傷的動物,幫助大家重建家園。彩虹用她的羽毛治癒了亮亮的傷口,亮亮則用他的電燈照亮了彩虹的道路。兩隻動物在彼此的陪伴和支持中,建立了深厚的感情。

最終,亮亮和彩虹的愛情故事在森林中傳開,成為了魔法森林裡最美麗的傳說。動物們都為他們的愛情感到高興,他們的故事也代代相傳,永不消逝。在這片充滿魔力的森林裡,亮亮和彩虹用他們的光芒和歌聲,帶來了無盡的希望和幸福。


範例二:

提示詞:

幫我產生彩虹鳥Python程式可以在micro:bit

上執行,完成三項能力

ChapGPT生成內容:

當然,這裡有一個 Python 程式,可以在 micro:bit 上模擬彩虹鳥的三項能力。這段程式包括了用 LED 顯示屏顯示不同的圖案來模擬治癒能力、預知天氣變化和播放歌曲。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
from microbit import *
import music
import random

# 彩虹鳥能力的顯示圖案
heal_icon = Image.HEART
weather_icons = [Image.SUNNY, Image.CLOUD, Image.RAIN]
sing_icon = Image.MUSIC_QUAVER

# 治癒能力
def heal():
    display.show(heal_icon)
    sleep(2000)
    display.clear()

# 預知天氣變化
def predict_weather():
    weather = random.choice(weather_icons)
    display.show(weather)
    sleep(2000)
    display.clear()

# 播放歌曲
def sing():
    display.show(sing_icon)
    music.play(music.ENTERTAINER)
    display.clear()

# 主循環
while True:
    if button_a.was_pressed():
        heal()
    if button_b.was_pressed():
        predict_weather()
    if pin_logo.is_touched():
        sing()

這段程式實現了彩虹鳥的三項能力:

1. **治癒能力**:按下 A 鍵,LED 顯示屏會顯示心形圖案,模擬治癒能力。

2. **預知天氣變化**:按下 B 鍵,LED 顯示屏會隨機顯示太陽、雲朵或雨滴圖案,模擬預知天氣變化的能力。

3. **播放歌曲**:觸摸 micro:bit 的 logo,LED 顯示屏會顯示音符圖案,並播放一段音樂,模擬彩虹鳥的歌聲。

將這段程式上傳到 micro:bit 上,即可看到彩虹鳥的三項神奇能力在你的 micro:bit 上展示出來。

執行失敗,因Image.SUNNY, Image.CLOUD, Image.RAIN並未定義。

範例三:

提示詞:

產生Image的LED 顯示屏會隨機顯示太陽、雲朵或雨滴圖案,Python程式,樣式如下:

display.show(Image('00300:' '03630:' '36963:' '03630:' '00300'))

ChatGPT生成的內容:

當然,這裡有一個 Python 程式,可以在 micro

上模擬彩虹鳥的三項能力,其中包括 LED 顯示屏隨機顯示太陽、雲朵或雨滴圖案的功能。


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
from microbit import *
import music
import random

# 治癒能力的顯示圖案
heal_icon = Image('09090:'
                  '90909:'
                  '09990:'
                  '09090:'
                  '00900')

# 預知天氣變化的圖案
sunny_icon = Image('00300:'
                   '03630:'
                   '36963:'
                   '03630:'
                   '00300')

cloud_icon = Image('00000:'
                   '00330:'
                   '03663:'
                   '36666:'
                   '03660')

rainy_icon = Image('00000:'
                   '00300:'
                   '03630:'
                   '03630:'
                   '36963')

weather_icons = [sunny_icon, cloud_icon, rainy_icon]

# 播放歌曲的顯示圖案
sing_icon = Image('00000:'
                  '09090:'
                  '00900:'
                  '09090:'
                  '00000')

# 治癒能力
def heal():
    display.show(heal_icon)
    sleep(2000)
    display.clear()

# 預知天氣變化
def predict_weather():
    weather = random.choice(weather_icons)
    display.show(weather)
    sleep(2000)
    display.clear()

# 播放歌曲
def sing():
    display.show(sing_icon)
    music.play(music.ENTERTAINER)
    display.clear()

# 主循環
while True:
    if button_a.was_pressed():
        heal()
    if button_b.was_pressed():
        predict_weather()
    if pin_logo.is_touched():
        sing()

這段程式實現了彩虹鳥的三項能力:

  1. 治癒能力:按下 A 鍵,LED 顯示屏會顯示心形圖案,模擬治癒能力。
  2. 預知天氣變化:按下 B 鍵,LED 顯示屏會隨機顯示太陽、雲朵或雨滴圖案,模擬預知天氣變化的能力。
  3. 播放歌曲:觸摸 micro:bit的 logo,LED 顯示屏會顯示音符圖案,並播放一段音樂,模擬彩虹鳥的歌聲。

將這段程式上傳到 micro:bit上,即可看到彩虹鳥的三項神奇能力在你的 micro:bit上展示出來。

執行結果正常。

範例四:
提示詞:
治癒能力請加上WS2812B-6的程式,顏色可以變化

ChatGPT生成內容:
當然,這裡是一個改進過的 Python 程式,可以在 micro:bit上模擬彩虹鳥的三項能力,並包括使用 WS2812B LED 變化顏色來展示治癒能力。為了使用 WS2812B LED,你需要安裝 micro:bit的 neopixel 庫。

首先,請確保你已經安裝了 neopixel 庫。如果還沒有安裝,你可以在 Mu 編輯器中使用以下命令來安裝:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import neopixel
from microbit import pin0, sleep

# 創建 neopixel 物件,假設有 6 顆 LED 連接在 pin0 上
np = neopixel.NeoPixel(pin0, 6)

# 設置所有 LED 的顏色為紅色
for i in range(6):
    np[i] = (255, 0, 0)
np.show()

現在,將這段程式整合到主程式中:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
from microbit import *
import music
import random
import neopixel

# 創建 neopixel 物件,假設有 6 顆 LED 連接在 pin0 上
np = neopixel.NeoPixel(pin0, 6)

# 治癒能力的顯示圖案
heal_icon = Image('09090:'
                  '90909:'
                  '09990:'
                  '09090:'
                  '00900')

# 預知天氣變化的圖案
sunny_icon = Image('00300:'
                   '03630:'
                   '36963:'
                   '03630:'
                   '00300')

cloud_icon = Image('00000:'
                   '00330:'
                   '03663:'
                   '36666:'
                   '03660')

rainy_icon = Image('00000:'
                   '00300:'
                   '03630:'
                   '03630:'
                   '36963')

weather_icons = [sunny_icon, cloud_icon, rainy_icon]

# 播放歌曲的顯示圖案
sing_icon = Image('00000:'
                  '09090:'
                  '00900:'
                  '09090:'
                  '00000')

# 設置 neopixel 顏色變化
def set_neopixel_color():
    for i in range(6):
        np[i] = (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255))
    np.show()

# 治癒能力
def heal():
    display.show(heal_icon)
    set_neopixel_color()
    sleep(2000)
    np.clear()
    display.clear()

# 預知天氣變化
def predict_weather():
    weather = random.choice(weather_icons)
    display.show(weather)
    sleep(2000)
    display.clear()

# 播放歌曲
def sing():
    display.show(sing_icon)
    music.play(music.ENTERTAINER)
    display.clear()

# 主循環
while True:
    if button_a.was_pressed():
        heal()
    if button_b.was_pressed():
        predict_weather()
    if pin_logo.is_touched():
        sing()

這段程式實現了以下功能:

  1. 治癒能力:按下 A 鍵,LED 顯示屏會顯示心形圖案,同時 WS2812B LED 燈會隨機變化顏色,模擬治癒能力。
  2. 預知天氣變化:按下 B 鍵,LED 顯示屏會隨機顯示太陽、雲朵或雨滴圖案,模擬預知天氣變化的能力。
  3. 播放歌曲:觸摸 micro
    的 logo,LED 顯示屏會顯示音符圖案,並播放一段音樂,模擬彩虹鳥的歌聲。

請確保 WS2812B LED 正確連接到 micro:bit的 pin0,並且提供適當的電源。將這段程式上傳到 micro:bit上,即可看到彩虹鳥的三項神奇能力在你的 micro:bit上展示出來。

執行結果正常。

沒有留言:

張貼留言