Python基础学习四
Python基础学习四
1.内置函数
help()函数:用于查看内置函数的用途。
help(abs)
isinstance()函数:用于判断变量类型。
isinstance(x,(int,float)) #判断变量x是否为int或float,返回一个布尔值
2.自定义函数
(1)基本格式
def [函数名](参数):
语句块
return 返回值
自定义函数只要运行至return语句即返回结束函数,传入的参数与返回的值都可以为多个,当返回的值为多个时,实质上是返回了一个元组。返回值可以为空。
pass语句:占位作用,使语句能够继续执行。即尚未想好写什么时可以先用pass语句跳过。
通过isinstance()函数可以用来排除参数类型错误。
def [函数名](x):
if not isinstance(x,(int,float)):
raise TypeError('bad operand type')
语句块
(2)参数
默认参数:在设置参数时,可以赋予其一个默认值,当空填时,默认其值为默认值。默认参数必须放在必选参数的后方。
需要注意的是,变化小的放置于后方作为默认参数可以减少调用函数的麻烦。仅需将特殊的对象传入时,修改对应的参数。定义默认参数要牢记一点:默认参数必须指向不变对象!
可变参数:参数的个数可变,在参数前加上星号“*”。在传入参数时,允许传入一个列表或元组等
关键字参数:参数前加两个星号“**”。调用时需要写上‘关键字’=‘内容’
命名关键字参数:格式如下:
def [参数名](必选参数,*,参数1)
在星号后的参数被视作为命名关键字参数,如果函数定义中已经有了一共可变参数,置放于命名关键字参数前。可以不用再额外用星号来分隔开。
在调用函数时,必须传入命令关键字参数的参数名。
[参数名](必选参数,参数1=‘内容’)
3.递归函数
在函数内部调用自身函数,即为递归函数。
(1)尾递归优化
为了防止栈溢出,采用为递归的方式优化运算。
尾递归:在函数返回的时候,调用自身本身,并且,return语句不能包含表达式。
例题分析:汉诺塔
def han(n,a,b,c):
if n=1:
print(a,'-->',c)
else:
han(n-1,a,c,b)
print(a,'-->',c)
han(n-1,b,a,c)
Python基础学习四的更多相关文章
- 【Python基础学习四】字符串(string)
Python 字符串 字符串是 Python 中最常用的数据类型.可以使用引号('或")来创建字符串. 创建字符串很简单,只要为变量分配一个值即可.例如: var1 = 'hello' va ...
- Python基础学习四 列表、元组、字典、集合
列表list,用中括号“[ ]”表示 1.任意对象的有序集合 列表是一组任意类型的值,按照一定顺序组合而成的 2.通过偏移读取 组成列表的值叫做元素(Elements).每一个元素被标识一个索引,第一 ...
- Python基础学习四 函数
1.内置函数 Python内置了很多有用的函数,是可以直接调用的. 参考链接:https://docs.python.org/3/library/functions.html 调用函数的时候,如果传入 ...
- Python基础学习四 文件操作(二)
####读取文件#### with open('goods_info.txt', 'r', encoding='utf-8') as f: f.seek(0) # 注意指针位置 goods_info ...
- 0003.5-20180422-自动化第四章-python基础学习笔记--脚本
0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...
- Day1 Python基础学习
一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...
- Day1 Python基础学习——概述、基本数据类型、流程控制
一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...
- Python 基础学习 总结篇
Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...
- Python基础学习二
Python基础学习二 1.编码 utf-8编码:自动将英文保存为1个字符,中文3个字符.ASCll编码被囊括在内. unicode:将所有字符保存为2给字符,容纳了世界上所有的编码. 2.字符串内置 ...
随机推荐
- c++程序—浮点数
#include<iostream> using namespace std; int main() { //2.单精度float //3.双精度double //默认情况下会输出6位有效 ...
- IntelliJ IDEA中,mybatis的配置文件(map.xml)无法编译到class文件夹下
编译工具:IntelliJ IDEA 项目结构:maven 项目框架:SSM 问题:java目录下,mybatis的配置文件(map.xml)无法编译到class文件夹下 问题原因:在idea中,直接 ...
- HDU - 2819 Swap(二分匹配)
题意:交换任意两行或两列,使主对角线全为1. 分析: 1.主对角线都为1,可知最终,第一行与第一列匹配,第二行与第二列匹配,……. 2.根据初始给定的矩阵,若Aij = 1,则说明第i行与第j列匹配, ...
- JSP标签 <fmt:formatDate>格式化日期
<fmt:formatDate>标签用于使用不同的方式格式化日期. <%@ page language="java" contentType="text ...
- zabbix监控linux 以及监控mysql
Zabbix监控Linux主机设置方法 linux客户端 :59.128 安装了mysql 配置zabbix的yum源 rpm -ivh http://repo.zabbix.com/zabbix/2 ...
- COGS 1489玩纸牌
%%%http://blog.csdn.net/clover_hxy/article/details/53171234 #include<bits/stdc++.h> #define LL ...
- Python学习——购物车程序
问题需求: 1.启动程序,让用户输入工资,然后打印商品列表 2.允许用户根据商品编号购买商品 3.用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 4.可随时退出,退出时,打印已购买的商品和余 ...
- python刷LeetCode:9. 回文数
难度等级:简单 题目描述: 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121输出: true示例 2: 输入: -121输出: fa ...
- 项目进度02-Day3
①今天做了什么? 数据库数据的重置.之前的用户类字段的补充.简单的平台信息查询 ②明天要做什么? 分类浏览和综合查询功能. ③遇到了什么问题? 出现问题:Parameter index out o ...
- HTML-基础标记
HTML, 一种超文本标记语言,顾名思义,要比文本的样式多,而且是由标记组成,还是一门语言. 标记写法 <标记名> <a></a>双标记 超链接 <br /& ...