- 主题:list的排序规则有一事不明。。
list 等于 list[:2]+list[2:7]+list[7:]
整整齐齐
【 在 HYNOS 的大作中提到: 】
: 比如 list=[p,y,t,h,o,n]:
: 正向排序编号的话,p是list[0]
: 反向排序编号的话,n是list[-1]
: ...................
--
FROM 222.128.190.*
第一个定义为1号的话,你这个也一样成立啊
【 在 Heston (Neo) 的大作中提到: 】
: 发信人: Heston (Neo), 信区: Python
: 标 题: Re: list的排序规则有一事不明。。
: 发信站: 水木社区 (Mon May 2 13:58:21 2022), 转信
:
--
FROM 182.102.132.*
head
/
|h+0 h+1 h+2 h+3 h+4 h+5
+---+---+---+---+---+---+
| p | y | t | h | o | n |
+---+---+---+---+---+---+
t-6 t-5 t-4 t-3 t-2 t-1 tail
C系语言的下标,通常为了与计算机内部的表示一致,
所以用偏移量而不是人类的序号来表示(后者常见于
试图与矩阵计算里的下标一致的编程语言)
注意正向下标和负向下标的语义要一致,也就是
说要么都按照单元格前部来算,要么都按照单元格
后部来算。
正向表示offset from head,所以最开始的是0
负向表示offset from tail,所以最末尾的是-1
【 在 HYNOS 的大作中提到: 】
: 比如 list=[p,y,t,h,o,n]:
: 正向排序编号的话,p是list[0]
: 反向排序编号的话,n是list[-1]
: ...................
--
修改:adoal FROM 122.234.60.*
FROM 122.234.60.*
不不不,问题的根本在于,你认为正向和反向都从各自的有符号1开始
才是整齐……但因为反向的起点是从最尾元素的后部开始数的,所以
对称了反而不整齐,会搞出来更多的计算。
按现在这样不对称的写法,反向下标是可以跟正向下标一样的语义来用的。
Python里[a:b]这种语法是前闭后开的,所以[a:-c]等于[a:-c+len],这样
一致性更好。
【 在 HYNOS 的大作中提到: 】
: 第一个定义为1号的话,你这个也一样成立啊
--
FROM 122.234.60.*
感谢,虽然还不是很懂。。。
【 在 adoal 的大作中提到: 】
: head
: /
: |h+0 h+1 h+2 h+3 h+4 h+5
: ...................
--
FROM 118.212.215.*
这个回复得点赞!
【 在 adoal 的大作中提到: 】
: 标 题: Re: list的排序规则有一事不明。。
: 发信站: 水木社区 (Mon May 2 16:29:12 2022), 转信
:
: head
: /
: |h+0 h+1 h+2 h+3 h+4 h+5
: +---+---+---+---+---+---+
: | p | y | t | h | o | n |
: +---+---+---+---+---+---+
: t-6 t-5 t-4 t-3 t-2 t-1 tail
:
:
: C系语言的下标,通常为了与计算机内部的表示一致,
: 所以用偏移量而不是人类的序号来表示(后者常见于
: 试图与矩阵计算里的下标一致的编程语言)
:
: 注意正向下标和负向下标的语义要一致,也就是
: 说要么都按照单元格前部来算,要么都按照单元格
: 后部来算。
:
: 正向表示offset from head,所以最开始的是0
: 负向表示offset from tail,所以最末尾的是-1
:
: 【 在 HYNOS 的大作中提到: 】
: : 比如 list=[p,y,t,h,o,n]:
: : 正向排序编号的话,p是list[0]
: : 反向排序编号的话,n是list[-1]
: : ...................
:
: --
:
: ※ 修改:·adoal 于 May 2 16:39:49 2022 修改本文·[FROM: 122.234.60.*]
: ※ 来源:·水木社区 mysmth.net·[FROM: 122.234.60.*]
--
修改:adoal FROM 122.234.60.*
FROM 59.77.36.*
以 0 开始的 N长的数组
下标是 0, 1, 2,..., N-1
从后面数,就是省掉了这个 N
-N 就是 第一个值 N-N=0
或者,从后面数, 是以 1 开始的下标 的负数
【 在 HYNOS 的大作中提到: 】
: 比如 list=[p,y,t,h,o,n]:
: 正向排序编号的话,p是list[0]
: 反向排序编号的话,n是list[-1]
: ...................
--
FROM 13.56.31.*
因为多数语言的下标 是从 0 开始的
原因上面好多人说了
下标 表示的 是偏移量
而 -1 ,你可以认为是一种缩写
普通的下标值, 不会是负的, 所以,不会产生误解
【 在 HYNOS 的大作中提到: 】
: 为什么不是如下这样搞的整整齐齐:
正向排序,p是list[1]
反向排序,n是list[-1]
: ...................
--
FROM 13.56.31.*
感谢以上各位。
懂是不大懂,但是自己也建立了一个理解,如图,大概就是:
1,头和尾各设置为0 ,
2,在每个value之间建立编号,
3,编号负责标定该编号后的value
不知道是不是这意思。。
【 在 hongyan2022 (论坛功德灌) 的大作中提到: 】
: 发信人: hongyan2022 (论坛功德灌), 信区: Python
: 标 题: Re: list的排序规则有一事不明。。
: 发信站: 水木社区 (Tue May 3 14:31:26 2022), 转信
:
--
FROM 222.204.105.*
![单击此查看原图](//static.mysmth.net/nForum/att/Python/165162/623/middle)
你最后 画的 0 要包在 “-1法” 里
【 在 HYNOS 的大作中提到: 】
: 感谢以上各位。
: 懂是不大懂,但是自己也建立了一个理解,如图,大概就是:
: 1,头和尾各设置为0 ,
: ...................
--
FROM 52.9.227.*