python基础课程_学习笔记26:编程的乐趣
编程的乐趣
编程柔术
当你坐下来,打算如何组织计划要定时,具体程序,然而,无论什么经验。在实现时间的函数的,你会逐渐学会了原来的设计,实用的新知识。我们不应该忽视沿途汲取的教训,相反,它们用于其他设计软件(或重建)在。
灵活性的实现包含很多方面。以下是当中两个:
原型设计:python最优秀的功能之中的一个就是能够高速地编敲代码。
编写原型程序是更充分地了解问题的一种非常好的方法。
配置:灵活性有非常多种存在形式。配置的目的就是让程序某部分的改变更简单,对于你和用户来说都是这样。
第三点是自己主动化測试。假设希望轻松改变程序的话,那么自己主动化測试绝对是不可缺少的。使用原地測试,就能保证你的程序在进行改动后还能工作。
原型设计
在将一些思想融入到程序的结构中后,建议实现一个简单的版本号,这个版本号的功能可能很有限。
还能在不论什么程序设计语言中使用原型设计,但python的强大之处就在于编写一个模型仅仅须要非常少的投入。而不用大动干戈。
配置
第二种更加简单的在程序中引入抽象的方法:从代码中提取符号化常量。
提取常量
为了标识变量是作为符号化常量对待的。能够用特殊的命名规则——名字之用大写字母。而且用下划线分隔每一个单词。
配置文件
为自己使用方便提取常量是一码事,还要考虑有些常量是要公开给用户的。
这里不是将这些配置变量放在模块的开头,而是将它们放在单独的文件里。实现这个功能的最简单方法就是为配置创建单独的模块。
使用配置文件具有两面性:一方面,配置功能非常实用,但对整个项目使用集中、共享的变量库会让项目的模块性下降、总体性上升。一定要确保没有破坏抽象(比方封装)规则。
第二种方法是使用标准库模块ConfigParser,它的作用是对配置文件使用适当的标准格式。它接受标准的python赋值语法:
greeting = ‘hello,world!’
第二种在非常多程序中使用的配置格式例如以下:
greeting: hello,world!
须要使用[files]或者[colors]这种数据头将配置文件划分为几个区段。
名称能够任意设定。但须要将它们用方括号括起来。
日志记录
日志记录在大幅度更改程序内核时候非常实用,它能够帮助找到问题和错误所在。
日志记录基本上就是收集与程序执行有关的数据,这样能够在随后进行检查(或累计数据)。
print语句算是一种简单的日志记录形式。
仅仅要在程序开头放上以下这条语句:
log=open(‘log.txt’,’w’)
随后就能够将不论什么感兴趣的程序状态信息像以下这样放在文件里:
print >> log, (‘Downloading file from URL %s’ % url)
text=urllib.urlopen(url).read()
print >> log, ‘File successfully downloaded’
能够使用标准库中的logging模块,logging是个高级模块。值得学习。
假设还想学
推荐阅读:
《程序猿修炼之道》
《重构》
《设计模式》
《測试驱动开发》
《UNIX编程艺术》
《算法导论》
《计算机程序设计艺术》卷1-卷3
《Concepts, Techniques, and Models of Computer Programming》
就算不读完每本书的每一个,也容易Fanfankan。这种洞察力可以在开发过程中培养。
版权声明:本文博客原创文章,博客,未经同意,不得转载。
python基础课程_学习笔记26:编程的乐趣的更多相关文章
- python基础课程_学习笔记15:标准库:有些收藏夹——fileinput
标准库:有些收藏夹 fileinput 重要功能 性能 叙述性说明 input([files[,inplace[,backup]]) 便于遍历多个输入流中的行 filename() 返回当前文件的名称 ...
- python基础课程_学习笔记13:标准库:有些收藏夹——sys
标准库:有些收藏夹 sys sys这个模块可以让你访问和python解释器联系紧密的变量和函数. sys模块中一些重要的函数和变量 函数/变量 描写叙述 argv 命令行參数,包含脚本名称 exit( ...
- python基础课程_学习笔记21:文件和材料
文件和材料 打开文件 open功能是用来打开文件,语法例如,下面的: open([name[,mode[,buffering]]) open函数使用一个文件名称作为唯一的强制參数,然后返回一个文件对象 ...
- python基础课程_学习笔记20:标准库:有些收藏夹——os
标准库:有些收藏夹 os os模块为您提供访问多个操作系统服务特征. os和它的子模块os.path还包含一些用于检查.构造.删除文件夹和文件的函数,以及一些处理路径的函数. os模块中一些重要函数和 ...
- python基础教程_学习笔记14:标准库:一些最爱——re
标准库:一些最爱 re re模块包括对正則表達式的支持,由于以前系统学习过正則表達式,所以基础内容略过,直接看python对于正則表達式的支持. 正則表達式的学习,见<Mastering Reg ...
- python基础教程_学习笔记12:充电时刻——模块
充电时刻--模块 python的标准安装包含一组模块,称为标准库. 模块 >>> import math >>> math.sin(0) 0.0 模块是程序 不论什 ...
- python基础教程_学习笔记19:标准库:一些最爱——集合、堆和双端队列
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/signjing/article/details/36201499 标准库:一些最爱 集合.堆和双端队 ...
- python基础课程_2学习笔记3:图形用户界面
图形用户界面 丰富的平台 写作Python GUI程序前,须要决定使用哪个GUI平台. 简单来说,平台是图形组件的一个特定集合.能够通过叫做GUI工具包的给定Python模块进行訪问. 工具包 描写叙 ...
- python基础教程_学习笔记1:序列-1
序列 数据结构:通过某种方式组织在一起的数据元素的集合,这些数据元素能够是数字或者字符,甚至能够是其它数据结构. python中,最主要的数据结构是序列. 序列中的每一个元素被分配一个序号--即元素的 ...
随机推荐
- Android学习-各种对话框
在android的编程中,对话框的用处是非常多的,然而,有时对对话框的需求也是不一样的,那么现在,就总结对话框的种类,以及事件的处理形势. 1.简单的对话框 public void showDialo ...
- linux中怎样设置DHCP
linux怎样设置DHCP 环境:RH linux 9.0 使用linux下经常使用的dhcpd包. 最新版本号 dhcp3.0.5 下载地址: 下载 1.安装: 先拷贝dhcp-3.0.5.tar. ...
- 中国科学院信息project研究所 第四研究室实习生/应届生招聘
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2hpWmhpeGlu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...
- 采用DWR、maven保存数据到数据库
一.原理: Ajax是时下比较流行的一种web界面设计新思路,其核心思想是从浏览器获取XMLHttp对象与服务器端进行交互. DWR(Direct Web Remoting)就是实现了这种Ajax技术 ...
- 网络安全之IP伪造
眼下非常多站点的涉及存在一些安全漏洞,黑客easy使用ip伪造.session劫持.xss攻击.session注入等手段危害站点安全.在纪录片<互联网之子>(建议搞IT的都要看下)中.亚伦 ...
- JAVA 保留两位小数的四种方法
import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFormat; publiccl ...
- 一类斜率优化的dp(特有性质:只能连续,不能交叉)
hdu3480 给定一个有n个数的集合,将这个集合分成m个子集,要求子集的并等于全集求花费最小. 花费为该子集的(最大数-最小数)的平方. 我们将n个数排序, a < b < c < ...
- php查找字符串是否存在
strstr //搜索字符串在另一字符串中的首次出现(对大小写敏感) //该函数返回字符串的其余部分(从匹配点).如未找到则返回 false stristr //查找字符串在另一字符串中第一次出现的位 ...
- Red Gate系列之六 SQL Test 1.0.12.3 Edition SQL测试工具 完全破解+使用教程
原文:Red Gate系列之六 SQL Test 1.0.12.3 Edition SQL测试工具 完全破解+使用教程 Red Gate系列之六 SQL Test 1.0.12.3 Edition S ...
- 水声通信(传声)于iOS、Android在情景-depth分析(包括一些声通信源)
最近的水声通信非常热,特别是,非常嵌入式设备备受瞩目使用,前段时间公布了声通信部分源代码(iOS和Android版本号.下载源的最新版本:点击打开链接 http://download.csdn.net ...