记录一下python列表的神奇之处
前言
因为学习的第一门编程语言是C语言,所以在学习python和编写python代码时,总是会不经意的采用C语言的语法和思想,昨天在看一个代码算法时就出现了这个问题
问题和解决
N = [1] count = 1 for i in range(0,6): print(N) N.append(0) count += 1 N = [N[k]+N[k-1] for k in range(0,count)]
这是一段很简单的python的杨辉三角形的算法,但是我出现了这样一个疑惑,为什么N[k-1]在这个列表生成器不会报错,因为这个迭代是从0开始的,那么k=0时,N[k-1]就会变成N[-1],这个写法在C语言里面如果打印是会打印一个巨大负数
而且在C语言里是无法赋值的,强行赋值就会出现这种错误
于是我决定自己在python里打印一下这个N[-1],N[-2]
终于明白了,python的列表的负数下标是相当于反方向计算,如果说正数是从左到右,那么负数就是从右到左,这是和C语言不像的地方
这篇博客就是随便记录一下,大佬看到了就图一乐吧
相关推荐
坚持是一种品质 2020-11-16
YENCSDN 2020-11-17
lsjweiyi 2020-11-17
houmenghu 2020-11-17
Erick 2020-11-17
HeyShHeyou 2020-11-17
以梦为马不负韶华 2020-10-20
lhtzbj 2020-11-17
夜斗不是神 2020-11-17
pythonjw 2020-11-17
dingwun 2020-11-16
lhxxhl 2020-11-16
染血白衣 2020-11-16
huavhuahua 2020-11-20
meylovezn 2020-11-20
逍遥友 2020-11-20
weiiron 2020-11-16