洞察探索如何利用兼容微信生态的小程序容器,实现跨平台开发,助力金融和车联网行业的数字化转型。
654
2022-11-19
Python基础教程(第3版)中文版 第19章 趣味编程 (笔记)
第19章 趣味编程
1. 为何要有趣
感到有趣时,实现高效就容易得多。
2. 编程柔术
在编程过程中遇到麻烦时,要灵活变通。
3.原型设计:
原型指的是尝试性实现,即一个模型。它实现了程序的主要功能。 对程序的结构(如需要哪些类和函数)有一定想法后,先实现一个功能简单的版本,有了可运行的程序后,可再添加新功能。
4.配置:
1.提取常量 常量值内置的字面量值,如数、字符串和列表。 常量可直接存储在全局变量,不必重复输入。 要指出变量为常量,变量名使用大写字母,用下划线分隔单词。 2.配置文件 将配置变量放在独立的文件中,方便进行更改设置。 方法1.为配置创建一个模块。 方法2.使用标准库模块configparser,可在配置文件中使用标准格式。如: greeting = 'Hello, world!' 或者 greeting: Hello, world!
必须使用[files]、 [colors]等标题将配置文件分成几部分。 标题名称可自定义,然后用[]括起。
例: 创建一个配置文件,名为area.ini 内容如下: [numbers]
pi: 3.14159265335897931
[messages]
greeting: Welcome to the area calculation program! question: Please enter the radius: result_message: The area is
在程序中使用: #使用配置文件中的常量,进行圆面积计算 from configparser import ConfigParser
CONFIGFILE = "area.ini"
config = ConfigParser()
config.read(CONFIGFILE)
print(config['messages'].get('greeting'))
radius = float(input(config['messages'].get('question')+ '' ))
print(config['messages'].get('result_message'), end=' ')
print(config['numbers'].getfloat('pi') * radius **2)
5.日志
日志就是收集与程序运行相关的数据的一个东西。 print语句是一种简单的日志形式。要使用它,只需在程序开头包含: log = open('logfile.txt', 'w') 然后就可以将程序信息写入这个文件: print('Downloading file from URL', url, file=log) text = urllib.urlopen(url).read() print('File successfully downloaded', file = log)
更好的做法是使用标准库中的模块logging 例:
import logging
logging.basicConfig(level=logging.INFO, filename='mylog.log')
logging.info('Starting program')
logging.info('Trying to divide 1 by 0')
print(1/0)
logging.info('The division succeed')
logging.info('ending program')
将在包含程序的文件夹找到一个'mylog.log'的文件 打开后看到程序运行的信息 INFO:root:Starting program INFO:root:Trying to divide 1 by 0
6.如果你已不胜其烦
7.如果你想深入学习 Andrew Hunt和David Thomas的著作《程序员修炼之道》。 Martin Fowler等的著作《重构》①。 四人组Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides的著作《设计模式》。 Kent Beck的著作《测试驱动开发》。 Eric S. Raymond的著作《UNIX编程艺术》②。 Thomas H. Cormen等的著作《算法导论》。 高德纳的著作《计算机程序设计艺术》(卷1~卷3)③。 Peter Van Roy和Seif Haridi的著作Concepts, Techniques, and Models of Computer Programming。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~