这是《落叶》文集里第 276 片落叶,希望你能喜欢,不为别的,只为这份坚持。
自己挖坑自己填,好记性不如烂笔头,尽在《老兵爱学习》
【已学习】
第五节课:Python 发送 HTTP 请求
【问题七】:
之前在建立数据库连接时,所有参数的值都是在代码里直接写死的常量,在课程练习里这么写问题不大,因为代码量也不会很大。如下:
self.conn = pyMySQLdb.connect(host='localhost', port=3306, user='root', passwd='123456', db='zyptest', charset='utf8')
如果是在实际项目中,这么写就会带来问题。每次如果变换执行环境,或者相关参数的值有修改,都需要将所有包含这个环境变量值得地方都同步更新掉,否则就会出错。这样一是工作量较大,二是容易遗漏。
【原因及解决方法】:
解决方法也很简单,就是用变量替代常量参数值。将那些可能变化的参数,全部放在公用的配置文件里,每次有变化时,也只需要修改配置文件里的参数值即可。
这里需要用到老师上节课教的一个知识点:Python 里的字典(dictionary)
概念:字典是另一种可变容器模型,可存储任意类型的对象。
格式:dict1 = {'key1':'value1','key2':'value2'}
字典中的每个键值对(key=>value)用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中。
print dict1['key1']
把相应的键放入方括号。
用法:
1、键必须是唯一的,但值不需要。
2、值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
3、我们可以对字典进行增删改的操作:
新增:dict['key3']="value3"
修改:dict['key1']=value1-1
删除单个键:del dict['key1']
清空词典所有条目:dict.clear()
删除字典:del dict
4、Python 字典的内置函数:
比较两个字典元素:cmp(dict1, dict2)
计算字典元素个数,即键的总数:len(dict)
输出字典可打印的字符串表示。:str(dict)
5、Python 字典的内置方法:
删除字典内所有元素: dict.clear()
返回一个字典的浅复制: dict.copy()
创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值: dict.fromkeys(seq[, val]))
返回指定键的值,如果值不在字典中返回default值: dict.get(key, default=None)
如果键在字典dict里返回true,否则返回false: dict.has_key(key)
以列表返回可遍历的(键, 值) 元组数组: dict.items()
以列表返回一个字典所有的键: dict.keys()
和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default: dict.setdefault(key, default=None)
把字典dict2的键/值对更新到dict里: dict.update(dict2)
以列表返回字典中的所有值: dict.values()
删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值: pop(key[,default])
随机返回并删除字典中的一对键和值: popitem()
【待学习】
第六节课:Python处理HTTP返回包(2017.08.25 周五晚 21:00)
作者简介:14 年测试 + 11 年项目管理 + 11 年团队管理 = 一个测试老兵