ppython 语句学习3

原创 2016年06月01日 10:19:45
>>> for i in range(len(hello)):
print hello[i]


w
o
r
l
d
1、len(hello)得到hello引用的字符串的长度,为5
2、range(len(hello)),就是range(5),也就是[0,1,2,3,4],对应着"world"每个字母索引,也可以称之为偏移量。
3、for i in range(len(hello)),就相当于for i in[0,1,2,3,4],让i依次等于list中的各个值。当i=0时,打印hello[0],也就是第一个字符。然后顺序循环下去,直到最后一个i=4为止。




>>> d = dict([("website", "www.itdiffer.com"), ("lang", "python"),("author", "laoqi")])
>>> d
{'website': 'www.itdiffer.com', 'lang': 'python', 'author': 'laoqi'}
>>> for k in d
     print k


输出结果是:


website
lang
author


注意到,上面的循环,其实是读取了字典的key。在字典中,有一个方法,dict.keys,得到的是字典key列表。


除了可以单独获得key或者value的循环之外,还可以这么做:
>>> for k,v in d.iteritems():
print k + "-->" + v



website-->www.itdiffer.com
lang-->python
author-->laoqi




>>> for i in 321:
print i





Traceback (most recent call last):
  File "<pyshell#19>", line 1, in <module>
    for i in 321:
TypeError: 'int' object is not iterable
报错信息中告诉我们,'int'对象不是可迭代的。言外之意是什么?那就是for循环所应用的对象,应该是可迭代的。那么,怎么判断一个对象是不是可迭代的呢?


>>> import collections
引入collections这个标准库。要判断数字321是不是可迭代的,可以这么做:
>>> isinstance(321, collections.Iterable)
False
返回了False,说明321这个整数类型的对象,是不可迭代的。


>>> isinstance([1,2,3], collections.Iterable)
True
从返回结果,我们知道,列表[1,2,3]是可迭代的。




字符串、列表、字典、元组都是可迭代的。


range(start,stop[,step])


range()函数的以下几点:
1、这个函数可以创建一个数字元素组成的列表。
2、这函数最常用于for循环
3、函数的参数必须是整数,默认从0开始。返回值是类似[start,start+step,start+2*step,...]的列表。
4、step默认值是1。如果不写,就是按照此值。
5、如果step是正数,返回list的最最好的值不包含stop值,即start+istep这个值小于stop:如果step是负数,start+istep的值大于stop。
6、step不能等于零,如果等于零,就报错。


range(start,stop[,step])
1、star: 开始数值,默认为0,也就是如果不写这项,就是认为start=0
2、stop:结束的数值,必须要写的。
3、step:变化的步长,默认是1,也就是不写,就是认为步长为1.坚决不能为0.


>>> range(9)   #从0开始,步长为1,增加1,直到小于9的那个数
[0, 1, 2, 3, 4, 5, 6, 7, 8]  #stop=9,别的都没有写,含义就是range(0,9,1)
>>> range(0,9)
[0, 1, 2, 3, 4, 5, 6, 7, 8]
>>> range(1,9,1)
[1, 2, 3, 4, 5, 6, 7, 8]
>>> range(1,9)
[1, 2, 3, 4, 5, 6, 7, 8]
>>> range(0,9,2)
[0, 2, 4, 6, 8]




找出100以内的能够被3整除的正整数。
>>> range(0,100,3)
[0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99]
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Fortran学习记录3(选择语句)

流程控制语句 if的基本用法 if-else语句块 多重判断if-elseif语句 if语句嵌套 Select case语句 Goto语句 PAUSE CONTINUE STOP...

hive学习3-DDL语句

Databases in Hive -- 在HIVE 中使用数据库 Hive offers no support for row-level  inserts, updates, and...

Python3 学习手册(二) 流程控制语句

上一篇,我们学习了Python中的基本数据类型,也顺带讲了下while循环。本篇开始系统的介绍一些流程控制语句。为了方便演示,本篇开始将部分源码写成.py文件,然后运行测试。 首次我们建立demo.p...

《Python基础教程》学习笔记(3-5字符串、字典与语句)

3. 使用字符串3.1 基本字符串操作所有标准的序列操作(索引、分片、乘法、判断成员资格、求长度、取最小值和最大值)对字符串同样适用。 字符串是不可变的 3.2 字符串格式化使用字符串格式化操作符...

Mysql学习总结(3)——MySql语句大全:创建、授权、查询、修改等

一、用户创建、权限、删除 1、连接MySql操作 连接:mysql -h 主机地址 -u 用户名 -p 用户密码 (注:u与root可以不用加空格,其它也一样) 断开:exit ...

Go语言学习笔记3——控制语句

有人说,程序是这个世界上最简单的东西,因为你只需要知道if、for、switch就足够了。事实上,程序也是由判断和循环两种语句组成。程序员更喜欢和机器打交道,而不是和人打交道,是因为程序的世界里更简单...
  • Marcky
  • Marcky
  • 2012年03月02日 21:13
  • 2960

C# 2010 从入门到精通 学习笔记3 第4章 使用决策语句

C# 2010 从入门到精通 学习笔记3 第4章 使用决策语句 本章内容 1.  声明布尔变量  使用布尔操作符来创建结果为 true 或 false 的表达式  使用 if 语句,...

Swift学习记录 -- 3. 逻辑分支语句(if , else if ,三目运算 ,guard)

Swift 中 if , else if ,三目运算相较OC来说 , 除了更加精简 , 几乎没有变化 . 只是Swift中新增了 guard判断 , Switch得到大力加强. Switch留到下篇文...
  • coderMy
  • coderMy
  • 2016年10月02日 11:29
  • 169

J2SE学习笔记3 — Java基本语法(7)流程控制语句

流程控制

php学习--3 流程控制语句,字符串操作

流程控制语句if(expr1){ statement1; }else if(expr2){ statement2; }else{ statement3; }switch(var...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ppython 语句学习3
举报原因:
原因补充:

(最多只允许输入30个字)