ATM错题集
一、知识补充:
1、sys.path.append
可以在python 环境下使用sys.path.append(path)添加相关的路径,但在退出python环境后自己添加的路径就会自动消失了
2、绝对路径和相对路径
脚本在C:/python目录下,相同目录下有一个文件叫test.txt
那么绝对路径就是 C:/python/test.txt,相对路径就是test.txt
使用脚本 open('C:/python/test.txt','r') 和 open('test.txt','r')效果都是一样的
3.hashlib.sha1(password.encode('utf_8')).hexdigest()
hashlib主要提供字符加密功能,
注意:hashlib 加密的字符串类型为二进制编码,直接加密字符串会报如下错误,所以要记得转码string.encode('utf-8')
hash.digest() 返回摘要,作为二进制数据字符串值,
hash.hexdigest() 返回摘要,作为十六进制数据字符串值,
4.json函数
json.dumps 用于将 Python 对象编码成 JSON 字符串。
json.loads 用于解码 JSON 数据。该函数返回 Python 字段的数据类型。
json.dumps(temp_user,ensure_ascii=False)
5、字典的循环遍历
6、python的read(),readline()和readlines()
关于read()方法:
1、读取整个文件,将文件内容放到一个字符串变量中 2、如果文件大于可用内存,不可能使用这种处理
关于readline()方法:
1、readline()每次读取一行,比readlines()慢得多 2、readline()返回的是一个字符串对象,保存当前行的内容
关于readlines()方法:
1、一次性读取整个文件。 2、自动将文件内容分析成一个行的列表。
7、eval()
eval 功能:将字符串str当成有效的表达式来求值并返回计算结果。
8.time模块
time sleep() 函数推迟调用线程的运行,可通过参数secs指秒数,表示进程挂起的时间。
time.sleep(t) t -- 推迟执行的秒数。
9. format函数
format函数格式化字符串的用法
二、问题积累
1、json文件中,若名称/值对都是字母时,需都加上引号" ",若不加引号,修改其名称/值对时就会报错。 若名称/值对的值全是数字时,值不加引号" ",修改其名称/值对时不会报错。
为避免json格式转换成python格式转换有误,名称/对可都加上引号。
2、当json对象转为python的字典时, 为嵌套字典时,读取内层的value时,其对应的key要打引号,如:
{"zy": {"ID": "500112199206051111", "authority": "True", "locked": "False", "money": 6000, "password": "40bd001563085fc35165329ea1ff5c5ecbdbbeef"}}
要读取‘locked’对应的值,当转换为python的字典时,读取方法为: temp_user[username]['locked']
3、字典添加新的键值对:
所以以下代码成立:
4、range()函数
range()是一个“左闭右开”的的序列。当有步长(step)时,其跳过的个数为step-1