首頁>Club>
9
回覆列表
  • 1 # 使用者486351650781

    這篇文章可以交給你怎麼在windows或macOS與python3環境下做出一個可以根據你的自定義設定畫出一朵花的程式。 在開始寫正式的邏輯程式碼之前,我們要先匯入一些庫:

    這些是我們在開發中會用到的庫。tkinter庫是python自帶的GUI圖形庫。雖說可能沒那麼完美,但是日常做一些軟體自己用還是沒有問題的。 實際上匯入tkinter圖形庫還有另外一種寫法: 這種方法相對來說更簡單些,但是import後面的*代表的是tkinter庫中的所有模組,所以會有些許的效能下降,但是並不明顯。 現在,我們就要開始寫邏輯程式碼了。 首先構建我們的GUI。 恭喜你!到現在,你已經成功構建了這個程式的GUI圖形介面的大部分!但是一些用pycharm的朋友可能會發現到現在為止介面仍然沒有顯示出來,這是因為在程式結尾沒有新增: 添加了這行語句之後,程式就會進入GUI視窗主迴圈,進而也就可以顯示視窗了。但是現在還不到顯示視窗的時候,因為我們還沒有新增按鈕以及按鈕所呼叫的函式。 在這裡,我們還要順便介紹一下Entry和Label控制元件。Entry控制元件就是文字輸入框控制元件,可以輸入單行文字。而Label控制元件則可以在程式視窗上顯示一些文字。 隨後,我們就該開始寫邏輯處理程式碼了。 在這寫程式碼中,我們首先使用t = turtle.Pen()例項化了turtle庫中的Pen物件,建立了一個畫布並且在上面畫了一個海龜畫筆。 下面,我們開始宣告一些變數。 首先,我們聲明瞭flower_color和stem_color兩個變數。它們是字串變數,透過宣告它們,我們可以把使用者輸入在輸入框裡的值傳遞給海龜畫筆。在這裡,我們使用了get方法。get方法是Entry,也就是文字輸入框自己帶有的方法。透過呼叫這個方法,我們可以取得文字輸入框中的值。 下面宣告的一些變數寫在了try-except語句裡。這是為什麼呢?我們在輸入框中進行輸入的時候,難免會有輸錯的時候,比如想輸入10,但有可能不小心碰到旁邊的一個鍵變成10p。我們在這裡使用的int函式只能把純數字字串傳喚為數字形式,而如果字串中包含字母,或者整個字串全都是字母,就會引發一個ValueError錯誤。因此,我們使用try-except語句來對錯誤進行處理。except語句後面是錯誤型別,而冒號後面的程式碼塊則是出現問題後執行的操作。我們在這裡如果出現了ValueError錯誤,就會彈出一個提示框提示輸入的文字有誤,並且透過return關鍵字退出函式。之所以要退出函式,是因為後面我們在使用海龜畫筆畫圖時,就會引發其他因為找不到變數的導致的錯誤。所以這時候直接退出函式是最穩妥的辦法。 下面,我們就開始操縱海龜畫筆了。我來給大家列一個列表,告訴大家我們使用的函式都有哪些,有什麼作用。 pensize()——設定筆的粗細speed()——設定海龜畫筆的繪製速度。最低為1,最高為10,超過10自動預設為10pencolor()——設定海龜畫筆的顏色,可以是諸如green,red等的顏色詞,也可以是16進位制,如#66ccffright()——畫筆向右轉的度數forward()——畫筆前進的畫素數left()——畫筆向左轉的度數circle()——畫一個圓,括號裡是圓的半徑。最後,我們使用了一個for迴圈來繪製花。那麼,這是怎麼實現的呢? 我們仔細觀察這個語句,可以發現它由以下幾個部分構成: forxinrange(flower_size)首先是for關鍵字,它表示這是一個for迴圈。 後面是x,這意味著它會把從range函式中取得的值不斷賦值給x,也可以說x的值將從0開始,一次+1的遞增,直到迴圈結束。我們每次轉90度,而且畫的圓圈一次比一次大,這樣就可以做出來一種想在畫一朵花一樣的效果。 這個函式結束之後,我們還可以看到有一些程式碼: 這一段程式碼的作用就是向介面上新增一個按鈕,並且開始程式主迴圈。下面,就來看一下完整的程式程式碼吧:

  • 中秋節和大豐收的關聯?
  • 戴比爾斯要進軍合成鑽石市場,鑽石飾品市場的競爭會加劇嗎?消費者能得到什麼實惠呢?