課程
/后端開發
/Python
/初識Python
t = tuple(range(0,10))
print t
為什么老是報錯?
2016-04-06
源自:初識Python 4-7
正在回答
首先開篇明義 哈哈, 題主的代碼無論是在 Python2.x 還是 Python 3.x 中都是可以運行的, 你說的報錯應該是 在網站的 課程中報錯, 并不是你代碼有錯誤,是網站的 正確性驗證 做的太死了。 以下的代碼是可以通過該課程的:
t?=?(?0?,?1?,?2?,?3?,?4?,?5?,?6?,?7?,?8?,?9?) print?t
然后我們萊講講 range 到底是什么,range 在 Python2.x 和Python3.x 中返回的不一樣, 但是都可以給 tuple 做參數。分開來講:
Python2.x 中的 range, 官方解釋如下:
range([start,] stop[, step]) -> list of integers ? ? ? ?Return a list containing an arithmetic progression of integers.
也就是說 在Python2.x 中 range 返回的就是一個整數的 list.
Python3.x 中的 range,?官方解釋如下:
range(stop) -> range objectrange(start, stop[, step]) -> range objectReturn an object that produces a sequence of integers from start (inclusive)?to stop (exclusive) by step.
range(stop) -> range object
range(start, stop[, step]) -> range object
Return an object that produces a sequence of integers from start (inclusive)?to stop (exclusive) by step.
各種調用細節都一樣,只是返回的不是list 類型了,而是一個 range object, 也就是說 range 自立門戶了,自成一個類型啦。 這個range 類型類似一個生成器。
下面說 tuple()函數, 同樣引用官方文檔:
tuple(iterable) -> tuple initialized from iterable's items?
很明顯只要給它傳一個 iterable 類型的參數就可以了, Python 中有好多 iterable類型的數據類型,比如說 list, dict, range,甚至于 string 都是可以的。
你可以試試在Python命令欄中輸入?help(range)查看幫助說明
舉報
學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-04-07
首先開篇明義 哈哈, 題主的代碼無論是在 Python2.x 還是 Python 3.x 中都是可以運行的, 你說的報錯應該是 在網站的 課程中報錯, 并不是你代碼有錯誤,是網站的 正確性驗證 做的太死了。 以下的代碼是可以通過該課程的:
然后我們萊講講 range 到底是什么,range 在 Python2.x 和Python3.x 中返回的不一樣, 但是都可以給 tuple 做參數。分開來講:
Python2.x 中的 range, 官方解釋如下:
也就是說 在Python2.x 中 range 返回的就是一個整數的 list.
Python3.x 中的 range,?官方解釋如下:
各種調用細節都一樣,只是返回的不是list 類型了,而是一個 range object, 也就是說 range 自立門戶了,自成一個類型啦。 這個range 類型類似一個生成器。
下面說 tuple()函數, 同樣引用官方文檔:
很明顯只要給它傳一個 iterable 類型的參數就可以了, Python 中有好多 iterable類型的數據類型,比如說 list, dict, range,甚至于 string 都是可以的。
2016-04-06
你可以試試在Python命令欄中輸入?help(range)查看幫助說明