送出圖片
基本語法
1 |
|
可以把圖片放在同一個資料夾裡面,用./
開頭做相對路徑
這個路徑寫法是從這個資料夾開始延伸的意思,如果直接使用./圖片.jpg
可以選到同一個資料夾的檔案
其實你會發現,discord.File是一個物件
又扣回類別的內容,python到處都是物件
應用:隨機圖片(編號)
這裡我們將使用os套件來進行系統相關操作,random套件來隨機取一個圖片
請先將三張圖片放入main.py的同一個資料夾,並且依照數字順序命名
如果有3張圖片,就個別命名成123
不用特別命名的方式在下一段
1 | import random |
random.randint()
這個函數會取範圍內的隨機一個數字,而我們可以利用這個方法對應到圖片的名稱開啟,達成隨機取一個的效果
應用:隨機圖片(不要求命名)
可以把圖片的名字改成非數字來測試
請在這裡創建一個資料夾,把圖片都放進去
這裡假設叫做pics
1 | import os |
os.listdir()
這個函式可以列出某一個資料夾裡面所有的檔案,包成一個list
如同開頭提到的,os模組主管跟系統有互動的操作,讀取檔案也在內
random.choice()
可以從列表裡面隨機挑一項出來
此處是由檔案列表裡面挑一項出來,達成隨機取圖片的效果
哪一個方法比較好?
我會推薦第二個方法
第一個方法會需要命名圖片,以及預先知道圖片有多少,但是如果臨時新增圖片,就必須修改機器人再重啟
第二個方法是每次都重新讀取資料夾,檔案有變更就可以重新讀取,而且名稱也是由os模組取得,不需要編號才能讓我們掌控
加場:超簡單方法
如果想發送網路上的圖片,只需要取得圖片的網址然後直接發出去就好了
上面兩個方法是便於管理
給你一些網址測試
本部落格所有文章除特別聲明外,均採用CC BY-NC-SA 4.0 授權協議。轉載請註明來源 Discord 機器人教學!