sum函數(shù)是Python中內(nèi)置的一個(gè)函數(shù),用于計(jì)算可迭代對(duì)象中所有元素的總和。它的語(yǔ)法如下:
sum(iterable[, start])
其中,iterable是可迭代對(duì)象,start是可選參數(shù),表示起始值。
sum函數(shù)的返回值類型會(huì)根據(jù)傳入?yún)?shù)的類型而有所不同。下面我們將圍繞sum函數(shù)python返回值類型展開(kāi)討論。
返回值類型為整數(shù)
當(dāng)傳入的可迭代對(duì)象中全是整數(shù)時(shí),sum函數(shù)的返回值類型為整數(shù)。例如:
`python
>>> nums = [1, 2, 3, 4, 5]
>>> sum(nums)
15
>>> type(sum(nums))
返回值類型為浮點(diǎn)數(shù)
當(dāng)傳入的可迭代對(duì)象中存在浮點(diǎn)數(shù)時(shí),sum函數(shù)的返回值類型為浮點(diǎn)數(shù)。例如:
`python
>>> nums = [1.1, 2.2, 3.3, 4.4, 5.5]
>>> sum(nums)
16.5
>>> type(sum(nums))
注意,如果傳入的可迭代對(duì)象中既有整數(shù)又有浮點(diǎn)數(shù),那么返回值類型也為浮點(diǎn)數(shù)。例如:
`python
>>> nums = [1, 2.2, 3, 4.4, 5]
>>> sum(nums)
15.6
>>> type(sum(nums))
返回值類型為復(fù)數(shù)
當(dāng)傳入的可迭代對(duì)象中存在復(fù)數(shù)時(shí),sum函數(shù)的返回值類型為復(fù)數(shù)。例如:
`python
>>> nums = [1+2j, 2+3j, 3+4j, 4+5j, 5+6j]
>>> sum(nums)
(15+20j)
>>> type(sum(nums))
返回值類型為起始值類型
如果指定了start參數(shù),那么sum函數(shù)的返回值類型將與start參數(shù)的類型相同。例如:
`python
>>> nums = [1, 2, 3, 4, 5]
>>> start = 10
>>> sum(nums, start)
25
>>> type(sum(nums, start))
`python
>>> nums = [1.1, 2.2, 3.3, 4.4, 5.5]
>>> start = 10.5
>>> sum(nums, start)
27.5
>>> type(sum(nums, start))
`python
>>> nums = [1+2j, 2+3j, 3+4j, 4+5j, 5+6j]
>>> start = 1+1j
>>> sum(nums, start)
(16+21j)
>>> type(sum(nums, start))
問(wèn)答擴(kuò)展
Q1:sum函數(shù)的返回值類型是否與可迭代對(duì)象的類型有關(guān)?
A1:是的,sum函數(shù)的返回值類型會(huì)根據(jù)傳入?yún)?shù)的類型而有所不同。
Q2:如果傳入的可迭代對(duì)象中既有整數(shù)又有浮點(diǎn)數(shù),sum函數(shù)的返回值類型是什么?
A2:如果傳入的可迭代對(duì)象中既有整數(shù)又有浮點(diǎn)數(shù),那么返回值類型為浮點(diǎn)數(shù)。
Q3:如果指定了start參數(shù),sum函數(shù)的返回值類型將如何確定?
A3:如果指定了start參數(shù),那么sum函數(shù)的返回值類型將與start參數(shù)的類型相同。