農林漁牧網

您現在的位置是:首頁 > 農業

整數位數獲取與所有位數之和,在python裡面的實現,技巧滿滿

2021-07-02由 DFBoy 發表于 農業

數位是什麼

Hello,大家好,這裡是隨時隨地準備死磕操作的DFBoy。

今天要進行的操作是——使用python求整數的位數及各位數之和。

01

場景描述

對於絕大多數python程式設計的初學者來說,這是一個很不錯的練手任務。

透過這個任務,可以瞭解到如何針對整數進行位數的獲取和運算·····

總之,就是為了讓自己的程式設計實力得到提升。

整數位數獲取與所有位數之和,在python裡面的實現,技巧滿滿

02

程式碼構思

既然需要對證書的位數進行分離,就需要對整數進行取餘、取整等一系列運算,獲取每一個位置的數字,最後進行加和運算。

但是,如果對整數的位數進行運算,需要大量的判斷,這對於一個優秀的程式猿來說不是一個合格的做法。

優秀的程式猿要用最少的程式碼最高效地做最多的事情。

沒錯,看過我前面文章的朋友已經記起來了。

你還在傻傻地從整數位數著手反轉整數嗎?用python直接反轉喲

的確,本次操作和我們前面的整數反轉使用同系列的做法,先將整數化為字串,然後將字串分拆,甚至可以更進一步,借用列表推導式直接使用求和函式對整數位數進行求和。

整數位數獲取與所有位數之和,在python裡面的實現,技巧滿滿

03

完整程式碼

整數位數獲取與所有位數之和,在python裡面的實現,技巧滿滿

04

程式碼講解

為了更進一步,本次操作採用了物件式程式設計。

整數位數獲取與所有位數之和,在python裡面的實現,技巧滿滿

第一行程式碼就是在提示使用者輸入一個整數。

整數位數獲取與所有位數之和,在python裡面的實現,技巧滿滿

這第二行程式碼也很簡單,和我們之前整數反轉的操作一樣,將整數轉化為字串,並且還使用了列表推導式,將整數的每一位數字都當成列表的一個元素。

整數位數獲取與所有位數之和,在python裡面的實現,技巧滿滿

最上面的兩行程式碼就是最核心的操作了,上面一行程式碼是透過列表長度得到整數的位數,下面程式碼則是將列表裡面的每一個元素重新轉化為數值型資料,並作為求和函式的引數,從而獲取整數各位數之和。

最後一行就很好理解了,將整數的位數和各位數之和打印出來。

05

操作寄語

沒有對比就沒有傷害,在獲取整數的位數和各位數之和的時候,要是因為主體是數值型資料就開始採用取餘等運算的話,將需要大量的程式碼運算。

但將整數轉化為字串後完美地避開了這些缺陷。

所以在進行程式設計的時候需要多方面地考慮問題!