Python是一種高級編程語言,既靈活又易于學習。Python開發者們很喜歡各種函數,包括水仙花函數,非常適合初學者,它可以通過簡單的Python代碼實現,我們可以通過Python的自帶函數來尋找水仙花數。
水仙花數指的是一個n位數,它的每個數字的n次方加起來等于這個數本身。比如,三位數153就是一個水仙花數,因為1^3 + 5^3 + 3^3 = 153 。
def narcissistic_number(num): n = len(str(num)) temp = num sum = 0 while temp >0: digit = temp % 10 sum += digit ** n temp //= 10 if num == sum: return True else: return False
此代碼中,我們定義了一個函數narcissistic_number,我們將要測試一個傳輸過來的數是否為水仙花數。首先,我們需要找出這個傳入的數有多少位,這可以通過把數字轉換成字符串,然后計算它的長度來實現。接下來,我們需要將每一位上的數字求n次方,求數字的總和。最后,我們將總和與傳入的數字比較。如果它們相等,則該數為水仙花數,返回True,否則返回False。
可以通過以下代碼來測試這個函數:
for i in range(100, 1000): if narcissistic_number(i): print(i)
在這個測試中,我們將會篩選出所有水仙花數,并打印出來。
總之,Python的簡單語法使得實現這個水仙花函數變得輕而易舉。如果想要進一步學習Python,可以去學習處理大數據的pandas庫、數據可視化的matplotlib庫,或是深度學習的tensorflow庫等等。
上一篇python 類調用自己
下一篇vue列表橫向滑動