日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

pythonfor循環中range與len區別_python

作者:_XU?Hongduo ? 更新時間: 2022-08-06 編程語言

range(x)

range(9) 代表著0、1、2、3、4、5、6、7、8 這九個順序數字的集合。
也就是 range(9) => range(0,9) => [0,1,2,3,4,5,6,7,8]

我們嘗試用 for 打印 range(9):

此外,range還有另外兩種用法,形如切片:

range(start,stop) 以及 range(start,stop,step)

range(start,stop)

range(start,stop) 等同于數組 [start,start+1,start+2,…,stop]

for i in range(3,8):
print(i)

range(start,stop,step)

range(start,stop,step) 等同于數組 [start,start+step,start+step*2,…, stop]

for i in range(3,8,2):
    print(i)

len()

len全稱為length,意為長度。
len(x),x可以為字符串str,也可以為數組array,但是不能為 int整型或者float浮點型。

len字符串以及數組:

print("len('hello world')=",len("hello world!"))
print("len([0,1,2,3,4,5,6,7,8,9])=",len([0,1,2,3,4,5,6,7,8,9]))

len不支持 int 或者float

print("len(12)=",len(12))
print("len(3.1415)=",len(3.1415))

range(len())

在python循環中常常會見到range(len()),這種組合從里到外分析可以很清晰的理解:

依次打印出數組a中內容:

a=[2,2,1,2,3,1]
for i in range(len(a)):
print(a[i])

但是其實我們可以不用range(len())組合,也可以按照要求打印出:

a=[2,2,1,2,3,1]
for i in a:
    print(i)

用range常見錯誤

TypeError: 'list' object cannot be interpreted as an integer

翻譯過來,其意思是 數組list 不能解釋為整數,就是說 range(x) 的 x 必須是整數,而此時是list,非法。

錯誤范例:

a=[2,2,1,2,3,1]
for i in range(a):
    print(i)

解決辦法:

加上len,嘗試用range(len(x))
len(x)將獲取x的長度,len(x)的值為整數值,為x中內容或者x的長度的值。

原文鏈接:https://blog.csdn.net/weixin_43098506/article/details/125201420

欄目分類
最近更新