Python学习笔记之缩进
来源:互联网 发布:3ds怎么网络联机 编辑:程序博客网 时间:2024/06/06 20:04
在Python语言中,对缩进十分敏感。
1、Python缩进分为空格和tab两种,要求每级缩进长度为4,可以使用4个空格或者一个tab(需要在编辑器中设置tab长度为4)
2、每一个缩进表示代码的一个逻辑层,python是通过缩进来划分程序逻辑的
在今天的学习过程中,在文件的一个操作中出现了如下错误,导致提醒I/O operation on closed file错误,实际是是缩进错误
man = []other = []try:data = open('sketch.txt')for each_line in data:try:(role,line_spoken) = each_line.split(':',1)line_spoken = line_spoken.strip()if role == 'Man':man.append(line_spoken)elif role == 'Other Man':other.append(line_spoken)except ValueError:passdata.close()except IOError:print('The datafile is missing!')print(man)print(other)
错误提示:
Traceback (most recent call last):
File "D:\PythonLearn\HeadFirstPyhton\chapter3\filesave.py", line 5, in <module>
for each_line in data:
ValueError: I/O operation on closed file.
错误原因是在for循环后应该关闭文件的data.close()操作,因为多了一级缩进,所以导致这一行是在for循环中的,因此关闭文件便无法完成循环
正确代码:
man=[]other=[]try:data = open('sketch.txt')for each_line in data:try:(role,line_sopken) = each_line.split(':',1)line_sopken = line_sopken.strip()if role == 'Man':man.append(line_sopken)elif role == 'Other Man':other.append(line_sopken)except ValueError:passdata.close()except IOError:print('The datafile is missing!')print(man)print(other)
在编码中,可以考虑在函数内部,对于不同逻辑层的代码适当加空行用以区分,使逻辑显示更加 清晰也易于查找错误
0 0
- Python学习笔记之缩进
- python学习笔记之-代码缩进
- Python学习笔记:缩进
- python学习之缩进
- Python之缩进错误
- python学习笔记-(5)缩进和分支
- Python学习笔记(6)-顺序结构与空格、缩进
- python起步之认识缩进
- python基础教程之缩进问题
- VIM学习笔记 缩进 (Indent)
- python入门笔记--序列、运算、强制缩进
- python缩进
- Python学习笔记之零
- Python学习笔记之递归
- Python学习笔记之全局变量
- python学习笔记之yield
- python 学习笔记之字典
- python 学习笔记之list
- hibernate的hql因mysql的datetime类型与java的TimpStamp不对应引起的异常
- 先验概率,后验概率,似然概率,条件概率,贝叶斯,最大似然
- 黑屏 判断SF是否正常工作debug 方法
- 如何生成UTF-16汉字编码表
- web开发中问题与解决办法
- Python学习笔记之缩进
- leetcode:Isomorphic Strings
- markdown里如何显示HTML标签和转义字符?
- PL/SQL Developer创建Job的步骤
- Activity五种数据传递方式
- 华为研发工程师编程题----进制转换(pow函数,string.find())
- java中ArrayList排序
- Hibernate的实体类中为什么要继承Serializable?
- 大神的神级js代码