pycharm小技巧

查看变量,方法的定义的地方
查看完后,回到刚才的地方
1.按住Ctrl,左击函数名,可以查看函数的定义和调用
2.右击函数名>>>find Useages>>>在控制台可以查看函数被调用的情况
回撤:
右击包或者模块>>>Local history >>>>show history,右击>>>>revert (回撤到想要的状态)
代码重构:批量修改函数名称和参数
修改函数名字,参数:
右击函数,Refactor>>>rename(修改函数名称)
change signature(修改函数参数)
技巧:
1.step over –F8—单步运行(没有断点也会单步执行)
2.step into –F7—跳入函数内部(没有断点也会单步执行)
打印信息:线上是不可以debug的,只能打印log日志
import logging

追加一个小练习,多看有益
现有一个数据库记录文件(见附件0005_1.txt),保存了学生课程签到的数据库记录。 内容格式如下 ,

(‘2017-03-13 11:50:09’, 271, 131),
(‘2017-03-14 10:52:19’, 273, 131),
(‘2017-03-13 11:50:19’, 271, 126),
每一行记录保存了学生的一次签到信息。

每一次签到信息的记录,分为三个部分, 分别是签到时间、签到课程的id号、签到学生的id号

要求大家实现下面的函数。其中参数fileName 为 数据库记录文件路径, 输出结果是将数据库记录文件中的学生签到信息保存在一个字典对象中,并作为返回值返回。

def putInfoToDict(fileName):

要求返回的字典对象的格式是这样的:

key 是各个学生的id号, value是 该学生的签到信息

其中value,里面保存着该学生所有签到的信息

   其中每个签到的信息是字典对象,有两个元素: key 是lessonid的 记录课程id,key是checkintime的 记录签到时间

比如,对于上面的示例中的3条记录,相应的返回结果如下:

{
131: [
{‘lessonid’: 271,’checkintime’:’2017-03-13 11:50:09’},
{‘lessonid’: 273,’checkintime’:’2017-03-14 10:52:19’},
],

126: [
    {'lessonid': 271,'checkintime':'2017-03-13 11:50:19'},
],

}

这里写图片描述

fileDire = "d:/0005_1.txt"
def putInfoToDict(fileDire):
    outDict = {}
    with open(fileDire) as fo:
        lines = fo.read().splitlines()
        for line in lines :
            line = line.replace("\t","").replace("(","").replace(")","").replace("'","").replace(";","")
            temp = line.split(",")
            checkTime = temp[0].strip()
            lessonId = int (temp[1].strip())
            userId = int(temp[2].strip())
            addDict = {"lessonid":lessonId,"checkintime":checkTime}
            if userId not in outDict:
                outDict[userId] = []
            outDict[userId].append(addDict)
        return outDict



res = putInfoToDict(fileDire)
import pprint
pprint.pprint(res)

猜你喜欢

转载自blog.csdn.net/qq_37615098/article/details/82719218