您的位置:首页 > 编程语言 > Python开发

Python 起步二 循环与逻辑,读取文件

2013-12-20 15:43 204 查看
首先Python是用对齐来表示代码逻辑,没有大括号了(被字典用掉了有木有)

if

x = 6
if x<0:
print 'x<0'
elif  not x%2:
print 'x is odd number'
else:
print 'x is even number'
说明:1 这类逻辑判断,比如while,for都要记得末尾的:

2 一开始if 跟 elif不对齐,出错

while

count = 4
while count >0:
print 'loop %d'%(count)
count -=1


说明:1 while一直循环到条件为false或者0

for

说明:1 for想当于一个迭代器,是从已经有的集合中去逐条拿出,功能类似于Java中的for(Int a:XX) ,下面这种是错误的

i = 0
for i  < 3 :
print i
i +=1
下面是for的一个运用(体会下for作为迭代器)

a = []
for i in range(9):
if i%2 == 0:
a.append(i)
print a
for j in [i for i in range(9) if i%2 == 0]:
print j


说明:1 解析
for j in [i for i in range(9) if i%2 == 0]:


这句话中,先生成一个1-9直接,偶数的列表,然后,for迭代来取

其中:for i in range(9) if i%2 ==0,这部分拿到了一个0,2,4,6,8的列表,然后通过前面的i 形成一个新的集合,供j迭代

再参看下面的代码

squared = [x**2 for x in range(9)  if not x%2]
for i in squared:
print i

for j in [x**2 for x in range(9)  if not x%2]:
print j


for x in range(9)  if not x%2
这只是说x 的范围,至于最后形成的列表集合,是用x或者x**2来形成,都没关系
上述的结果为0,4,16,36,这说明x%2取的是奇数,not x%2取的是偶数

2 内联的range()

for i in range(3):
print i
输出 0,1,2

for i in range(1,9):
print i


输出1,2......9

读取文件

filename = raw_input('enter file name:')
fobj = open(filename,'r')
for i in fobj:
print i ,
fobj.close()


说明: 1 fobj是一个文件对象句柄,得到的是一个逐行的列表,里面是字符串

2 open参数,第一个是文件名,第二个是权限,r读取,w写,a添加
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: