py程序员写代码的习惯养成 防止想到什么写什么

py程序员写代码的习惯养成 防止想到什么写什么

本例以一个爬虫项目为例

描述写代码的思路

架构注释

目标是明确:主线步骤


对起始页发起请求,获取数据

根据获取的数据,构建请求url列表

依次访问url列表中的网址,将响应保存到响应列表中

依次处理响应列表中的内容,将处理好的结果进行保存

将架构注释用代码形式表现出来


# 对起始页发起请求,获取数据
url = "起始页网址"
max_page = get_max_page(url)
 
# 根据获取的数据,构建请求url列表
request_url_list = get_request_url_list(max_page)
 
# 依次访问url列表中的网址,将响应保存到响应列表中
response_list = get_response_list(request_url_list)

# 依次处理响应列表中的内容,将处理好的结果进行保存
save_data(response_list)

分别实现每一个方法中的逻辑

以这个功能为例

get_request_url_list

写出它的实现代码

def get_request_url_list(max_page):
    url_list = list()
    for i in range(1, max_page + 1):
        temp = "第{}页的url格式化内容的代表".format(i)
        url_list.append(temp)
    return url_list

其它方法依次类推

功能完成

外层的结构布局完毕,里面的功能逻辑写完成,并且按照约定返回对应的内容。

这样子的代码就非常有层次感。

同时因为有了适当的注视,给其他人看,也非常明晰。

未来如果要对功能进行升级,只需要找到工农所在的函数,只用满目标聚焦,在这个功能函数这里就可以了。也方便修改。

例子代码参考


def get_request_url_list(max_page):
    url_list = list()
    for i in range(1, max_page + 1):
        temp = "第{}页的url格式化内容的代表".format(i)
        url_list.append(temp)
    return url_list


# 对起始页发起请求,获取数据
url = "起始页网址"
max_page = get_max_page(url)

# 根据获取的数据,构建请求url列表
request_url_list = get_request_url_list(max_page)

# 依次访问url列表中的网址,将响应保存到响应列表中
response_list = get_response_list(request_url_list)

# 依次处理响应列表中的内容,将处理好的结果进行保存
save_data(response_list)



你可能感兴趣的:(py程序员写代码的习惯养成 防止想到什么写什么)