python学习笔记1
2006-05-15 22:22
681 查看
今天看来 python 帮助文件中的教程的第1到第3章,觉得其中第3章中的slice比较狡猾:
str = 'abcdef'
str[2:3]代表的意思比较有趣,虽然str[0]='a', str[1]='b',......
但是str[2:3] = 'c' !
教程中以“HelpA”为例来介绍(如下)但是感觉理解起来有些牵强。
+---+---+---+---+---+
| H | e | l | p | A |
+---+---+---+---+---+
0 1 2 3 4 5
-5 -4 -3 -2 -1
或许是因为它的解释是基于index指向的并非某个字符而是字符间隙的缘故,我认为下面的理解更好:
+---+---+---+---+---+
| H | e | l | p | A |
+---+---+---+---+---+
0 1 2 3 4
-5 -4 -3 -2 -1
这个理解更符合C使用者的概念:从左到右字符下标从0到4,但是从右到左的时候注意是从-1开始算起。
为什么,如果最右是0就和最左重复了:)
另外str[2:3]要理解为取str中下标 >= 2但是 < 3 的!也就是个左开右闭的区间!所以str[2:3]='c'
更复杂的例子:
a = ['spam', 'eggs', 100, 1234]
a[1:-1] =?
很好办从a[1]开始是 'eggs', 100, 1234, 但是要小于a[-1] (a[-1]='1234')
所以a[1:-1]=['eggs',100]
str = 'abcdef'
str[2:3]代表的意思比较有趣,虽然str[0]='a', str[1]='b',......
但是str[2:3] = 'c' !
教程中以“HelpA”为例来介绍(如下)但是感觉理解起来有些牵强。
+---+---+---+---+---+
| H | e | l | p | A |
+---+---+---+---+---+
0 1 2 3 4 5
-5 -4 -3 -2 -1
或许是因为它的解释是基于index指向的并非某个字符而是字符间隙的缘故,我认为下面的理解更好:
+---+---+---+---+---+
| H | e | l | p | A |
+---+---+---+---+---+
0 1 2 3 4
-5 -4 -3 -2 -1
这个理解更符合C使用者的概念:从左到右字符下标从0到4,但是从右到左的时候注意是从-1开始算起。
为什么,如果最右是0就和最左重复了:)
另外str[2:3]要理解为取str中下标 >= 2但是 < 3 的!也就是个左开右闭的区间!所以str[2:3]='c'
更复杂的例子:
a = ['spam', 'eggs', 100, 1234]
a[1:-1] =?
很好办从a[1]开始是 'eggs', 100, 1234, 但是要小于a[-1] (a[-1]='1234')
所以a[1:-1]=['eggs',100]
相关文章推荐
- Python学习笔记20151211
- python基础学习笔记3
- Python元组学习笔记
- Python学习笔记二:布尔表达式
- 【python学习笔记】运算符、表达式
- Python学习笔记(20)-文件和文件夹的移动、复制、删除、重命名
- 【Python学习笔记】一个很酷的尾递归优化
- Python学习笔记2_一些小程序
- 【Python学习】Thread笔记(1)
- Python学习笔记(2):基本概念
- 学习python自动化运维笔记文件比较
- Python学习笔记之网络爬虫
- 零基础 入门学Python-学习笔记第一讲(基本知识)
- python学习笔记17-常用函数总结整理
- python学习笔记之基础操作
- Python第二周 学习笔记(1)
- python学习笔记 高阶函数map/reduce
- Python学习笔记——列表(list)的增,删,改,查
- Python学习笔记(0)
- 【从零开始】Python3 学习笔记