Python批处理脚本只能处理较为简单的顺序执行的语句,

语句太多了,就有点乱...是时候升级一下了。

函数可以将多条语句分组封装,实现面向过程的,简单的模块化管理。

方便将语句实行“网格”管控,不容易乱。

代码编译或运行中出bug不要紧,找该函数即可。

简单的Python函数

简单点,就是将多条语句“封装”下,

相当于将原来凌乱的语句,用塑料袋打包“封装”了下,

最终实现模块化的管理, 比如:

# coding=utf-8

import requests

def download_file():   #这是将多条语句打包“封装”
s = requests.get("http://www.zipython.com/images/angel.mp3")
with open("angel.mp3", "wb") as hf:
hf.write(s.content) download_file() # 调用的时候,只用这一句就够了。
更有意义的Python函数

包含参数输入,有返回值等,这才更具有函数的意义所在,

具备数据加工处理功能(有输入,有数据处理,有输出返回),

又实现了模块化“封装”:

# coding=utf-8
import os
import requests def download_file(url): #模块化“封装”,并预留url参数输入接口
s = requests.get(url)
file_name = url.split("/")[-1]
with open(file_name, "wb") as hf:
hf.write(s.content)
file_path = os.path.abspath(file_name)
print("file downloaded to %s" % file_path)
return file_path #有返回值,返回下载后的保存路径 download_file("http://www.zipython.com/images/angel.mp3")
# 只需要调用这个函数,并传url参数变量进去就可以了。

更多更好的原创文章,请访问官方网站:www.zipython.com

原文链接:https://www.zipython.com/#/detail?id=b51b9c64399a491896b7353976d66aae

也可关注“武散人”微信订阅号,随时接受文章推送。

《自拍教程35》段位二_Python面向过程函数的更多相关文章

  1. C语言学习系列(二)面向过程和面向对象

    一.基本定义 (一).面向过程(procedure oriented programming POP) 面向过程是分析解决问题的步骤,然后用函数把这些步骤一步一步的实现,然后在使用的时候一一调用则可. ...

  2. Mysql教程:(二)分组与函数查询group by

    分组与函数查询 温馨提示:分组之后查询其他函数结果是不正确的: 分组函数:group by 按班级分组,查询出每班数学最高分:select class,max(maths) from score gr ...

  3. 《自拍教程36》段位三_Python面向对象类

    函数只能面向过程,来回互相调用后顺序执行, 简单的编码项目,还能应付的过来, 复杂的大型项目,调用多了,就会乱. 如何才能不乱呢,可尝试下, 面向对象类的概念, 将现实世界的事物抽象成对象,将现实世界 ...

  4. 《自拍教程51》Python_adb批量生成App版本表格

    案例一:版本在软件研发阶段是很重要的, 不同的版本, 已修复的Bug也不一样, 所实现的功能不一样, Android终端产品正式版本发布前,项目经理除了确保系统版本确定无误外, 还会逐个验证所搭载的所 ...

  5. 《自拍教程45》Python_adb实时监控Logcat日志

    接上一篇:adb命令_一键截取logcat日志, 有一天, 系统稳定性开发负责人找到我,希望我能在跑android 系统monkey的时候, 实时监控logcat的输出,如果一旦发现"jav ...

  6. 《自拍教程46》Python_adb自动拍照100张

    Android手机测试, 涉及照相机(Camera)应用程序的稳定性测试的用例, 需要涉及100张照片的拍照自动化测试. 准备阶段 先清理老照片,照片一般存放在/scard/DCIM目录下 adb s ...

  7. 《自拍教程52》Python_adb运行Shell脚本

    Android作为一款Linux终端,肯定是支持.sh后缀的Shell脚本的运行的, 有时候测试环境准备或者长时间截取复杂的日志等,开发会给到一些Shell脚本. Shell脚本的执行的优势: 快捷高 ...

  8. Android-Java-面向对象与面向过程举例

    例子一: 面向过程 在生活中的体现: 李四去饭店吃饭,进入风华高档餐饮店后,首先不理服务员,然后冲进厨房,推开厨师,自己开煤气,自己切菜,自己炒菜,自己调料,炒好后自己端出来,然后吃,吃完后 买单 面 ...

  9. php连接数据库的两种方式- 面向过程 面向对象

    php连接数据库的两种方式- 面向过程 面向对象   一.面向对象1. 链接数据库$conn = @new mysqli("127.0.0.1","root", ...

随机推荐

  1. 利用face_recognition,dlib与OpenCV调用摄像头进行人脸识别

    用已经搭建好 face_recognition,dlib 环境来进行人脸识别 未搭建好环境请参考:https://www.cnblogs.com/guihua-pingting/p/12201077. ...

  2. poj-3662 Telephone Lines 二分答案+最短路

    链接:洛谷 POJ 题目描述 Farmer John wants to set up a telephone line at his farm. Unfortunately, the phone co ...

  3. 基础篇八:log配置

    第一:首选查看有哪些日志文件 cd /etc/nginx/ cat nginx.conf cd /var/log/nginx/

  4. poj 2342树形dp板子题1

    http://poj.org/problem?id=2342 #include<iostream> #include<cstdio> #include<cstring&g ...

  5. 系统学习javaweb4----CSS层叠样式表(结束)

    摘要:这几天临近过年,事情有点多,学习总是段段续续的,今天总算完成了CSS的基本知识学习. 学习笔记: 西瓜学习javaweb 1.css简述. 1.1 css是什么?有什么作用? HTML----- ...

  6. Linux 设置开机启动项的几种方法

    方法一:编辑rc.loacl脚本 Ubuntu开机之后会执行/etc/rc.local文件中的脚本. 所以我们可以直接在/etc/rc.local中添加启动脚本. $ vim /etc/rc.loca ...

  7. LootCode-链表排序-Java

    链表排序 0.来源 来源:力扣(LeetCode) 题目链接:https://leetcode-cn.com/problems/sort-list 1.题目描述 在 O(n log n) 时间复杂度和 ...

  8. 牛客-Forsaken的数列(Treap)

    题目传送门 sol:第一次看题还真信了是用线段树来做,但是没什么想法,看了题解发现是我不会的Treap,然后花了几天时间学习了一下并补掉题目 无旋Treap #include <bits/std ...

  9. Office 365管理员设置

    一.注册 1.输入网站 http://www.21vbluecloud.com/  ,进入世纪互联蓝云官方网站 2.选择 运营的产品->Office 365 3.选择了解更多 4.浏览根据不同的 ...

  10. 75)PHP,session在使用时的一些语法问题

    (1)cookie仅能存字符串类型,但是session能存任何数据类型,比如: 然后我在session_2.php中输出这个session_1.php的数据: 结果展示: 我得在浏览器的地址栏中先请求 ...