#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 学习网站:www.liaoxuefeng.com
#****************************************************
# Python3 函数 *
#****************************************************
print ("--------------------分割线------------------")
#============
# 调用函数
#============
'''
要调用一个函数,需要知道函数的名称和参数,可以从python官方网站查看
文档:https://docs.python.org/3/library/functions.html
也可以在交互式命令行通过help(function_name)查看函数的帮助信息
'''
print( abs(100), abs(-100), abs(12.34) ) # 100 100 12.34
'''
如果函数传入的参数个数不对,会报TypeError的错误,并且会明确说明
参数个数应该是几个,但我们给出了几个。
print( abs(100,99) )
上面语句执行:TypeError: abs() takes exactly one argument (2 given)
'''
'''
如果函数传入的参数类型不对,也会报错TypeError
print( abs('string') )
上面语句执行: TypeError: bad operand type for abs(): 'str'
'''
'''
函数名其实就是指向一个函数对象的引用,完全可以把函数名赋给一个变量
相当于给这个函数起了一个“别名”
'''
fun1 = abs
print( fun1(-100) ) # 100
print ("--------------------分割线------------------")
#============
# 定义函数
#============
'''
定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:
然后在缩进块中编写函数体,函数的返回值用return语句返回。
'''
def my_abc(x):
if x >= 0:
return x
else:
return -x
print( my_abc(-10.11) ) # 10.11
'''
如果已经把my_abs()的函数定义保存为abstest.py文件了,那么可以在该文
件的当前目录下启动python解释器,用from abstest import my_abs来导入
my_abs()函数,注意abstest是文件名(不含.py扩展名)
'''
# 执行到return时,函数执行完毕并返回。如果没有return语句,函数执行
# 完毕后也会返回结果,只是结果为None。return None可以简写为return。
def no_return(t):
pass
print( no_return('test') ) # None
def ret_none1(t):
return None
print( ret_none1('test') ) # None
def ret_none2(t):
return
print( ret_none2('test') ) # None
print ("--------------------分割线------------------")
# 如函数参数、函数个数输入错误,系统会报错,我们自己也可以定义参数
# 类型检查,数据类型检查可以用内置函数isinstance()实现:
def my_abs_check(x):
if not isinstance(x, (int, float)):
raise TypeError('bad operand type')
if x >= 0:
return x
else:
return -x
# print( my_abs_check('str') )
'''
执行结果:
TypeError: bad operand type
'''
# 返回多个值
def ret_two_val(x):
return x, x+1
print( ret_two_val(5) ) # (5, 6)
# 但其实这只是一种假象,函数返回的仍然是单一值:
vals = ret_two_val(100)
print( vals ) # (100, 101)
'''
原来返回值是一个tuple,但是,在语法上,返回一个tuple可以省略括号,而
多个变量可以同时接收一个tuple,按位置赋给对应的值,所以,python的函
数返回多值其实就是返回一个tuple,但写起来更方便。
'''
'''
注意:
1. 定义函数时,需要确定函数名和参数个数
2. 如果有必要,可以先对参数的数据类型做检查
3. 函数体内部可以用return随时返回函数结果
4. 函数执行完毕也没有return语句时, 自动return None
5. 函数可以同时返回多个值,但其实就是一个tuple
'''
相关推荐
自动驾驶仿真工具链集成:ECU TEST与VTD、VERISTAND的深度配置指南
本文详细介绍了自动驾驶仿真测试中ECU TEST、VTD与VERISTAND三大核心工具的深度集成与连接配置方法。通过解析工具链的角色分工,提供从单机到分布式部署的实战指南,并重点阐述了Test Bench Configuration与Test Configuration的关键参数设置、SSH免密登录配置,以及在线与离线工作模式的切换技巧,旨在帮助测试工程师高效构建稳定、自动化的硬件在环测试环境。
机器学习总结(lecture 12)算法:朴素贝叶斯 naive bayes
lecture 12:朴素贝叶斯 naive bayes 目录 lecture 12朴素贝叶斯 naive bayes 目录 1朴素贝叶斯相关的统计学知识 2朴素贝叶斯的模型 3朴素贝叶斯的推断过程 4朴素贝叶斯的参数估计 5总结 6scikit-learn 朴素贝叶斯类库 参考博客:https://www.cnblogs.com/pinard/p/6069267.htm...
如何利用Arcgis进行地统计学分析(三):空间插值方法选择与优化
本文深入探讨了在Arcgis中进行地统计学分析时,如何根据探索性数据分析(EDA)结果科学选择与优化空间插值方法。文章对比了IDW、RBF、克里金等主流方法的适用场景与核心参数,并通过实战案例详解了从数据诊断到模型调优的完整流程,强调结合半变异函数与趋势分析进行“对症下药”,以提升插值结果的精度与可靠性。
Udacity机器学习入门笔记——朴素贝叶斯
监督学习算法第一种Naive Bayes 朴素贝叶斯Scatter plot 散点图Decision Surface Linea 决策线朴素贝叶斯 是一个常见的寻找决策面的算法Bayes Rule 贝叶斯规则无人驾驶汽车是一个重要的监督分类(supervised classification)问题 监督:表示你有许多样本,我们可以说,你了解这些样本的正确答案监督式分类示例□ 拿一册带标...
EPLAN中3D宏文件的创建与优化技巧(以开关电源为例)
本文以开关电源为例,详细讲解了在EPLAN中创建和优化3D宏文件(.ema)的全流程。从搭建宏项目、导入模型,到精确定义安装面、调整视野方向,再到定义3D连接点并关联部件库,旨在帮助电气工程师在设计阶段实现精准布局、避免安装冲突,从而提升设计效率与质量。
三、分区配置
rk3566/rk3568 修改分区
朴素贝叶斯Naïve Bayes分类算法在Hadoop上的实现
1. Naïve Bayes算法介绍 Naïve Bayes是一个简单有效的分类算法,已经得到广泛使用。本文讨论了海量数据(TB级)下Naïve Bayes算法的实现方法,并给出了Hadoop上的实现方案。 2. Naïve Bayes算法介绍 朴素贝叶斯分类器基于一个简单的假定: 在给定目标值时属性值之间相互独立, 即特征对于给定类的影响独立于其它特征。利用该假设,文档
QT6实现USB摄像头接入显示与抓拍功能实现
QT实现USB摄像头接入显示 一、UVC协议简介 UVC全称是USB Video Class(USB视频类),是一种标准化的USB视频设备通信协议,它定义了摄像头与主机之间的数据传输协议和格式。 UVC协议的出现,解决了摄像头厂商之间互不兼容,以及摄像头应用开发与平台之间的散乱问题。 UVC标准是由USB-IF主导制定的,目前最新的版本是UVC 1.5,UVC的缺省设置类容易实现,不需要额外的驱动程序。
Python3.x:pyodbc调用sybase的存储过程
Python3.x:pyodbc调用sybase的存储过程 示例代码 # python3 # author lizm # datetime 2018-03-02 17:00:00 # -*- coding: utf-8 -*- from datetime import datetime import datetime, time import sys import pyo...
[QMT和ptrade量化交易小白入门]-112、小市值热点概念交易策略,回测5年20倍
本专栏主要是介绍QMT和ptrade的基础用法,常见函数,写策略的方法,也会分享一些量化交易的思路,大概会写200篇左右。QMT的相关资料较少,在使用过程中不断的摸索,遇到了一些问题,记录下来和大家一起沟通,共同进步。
open3d将某一时间序列下的彩色图和深度图批量转换成点云(python)
必备条件需要3D相机生成的彩色图及深度图,注意要将深度图与彩色图对齐(一般3D相机自带对齐算子),以及3D相机的彩色图内参(相机自带内参获取功能)。有了此彩色图、对齐后的深度图以及相机内参就能使用open3d生成彩色点云了.
艺术签名python_python如何爬取个性签名
思路改进原博主文章(Python GUI–Tkinter简单实现个性签名设计)的代码,原先的代码是基于Python2的,我这份代码基于Python3 并针对当前的网站做了相应调整前置要求Python 3.XtkinterPIL完整代码# -*- coding:utf-8 -*-from tkinter import *import tkinterimport requestsimport refr...
怀旧版电脑GBC模拟器
再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。
Python抓取个性签名
思路 改进原博主文章(Python GUI–Tkinter简单实现个性签名设计)的代码,原先的代码是基于Python2的,我这份代码基于Python3 并针对当前的网站做了相应调整 前置要求 Python 3.X tkinter PIL 完整代码 # -*- coding:utf-8 -*- from tkinter import * import tkinter i...
STM32F407中文手册
STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。
Statistics and Machine Learning Toolbox
Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具
python字典结构_Python的dict字典结构操作方法学习笔记
一.字典的基本方法1.新建字典1)、建立一个空的字典>>> dict1={}>>> dict2=dict()>>> dict1,dict2({}, {})2)、新建的时候初始化一个值>>> dict1={1:'a',2:'b',3:'c'}>>> dict1{1: 'a', 2: 'b', 3: 'c'}3)...
Data-Structures-and-Algorithm-Analysis-in-Java.pdf
作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...
python获取a股报表数据_python获取A股基础数据
从网易网站上面获取A股数据的基础数据,往大的说,将来可能用作深度学习的数据源,嘿嘿~~实现原理:python从网易的链接,可以将某只股票,下载一定时间范围的数据;例如下载第一创业(002797):http://quotes.money.163.com/service/chddata.html?code=1002797&end=20180302&fields=TCLOSE;HIGH;...
python获取A股基础数据
从网易网站上面获取A股数据的jic
python 将txt内容写入excel
#!/usr/bin/env python # -*- coding: utf-8 -* import os import xlrd import xlwt import datetime import re from utils.XUtils import XUtils def create_and_write_data_to_excel(p_file_name_prefix=None,...
字典属于python序列类型_python 序列类型4(字典Dictionary)
字典Dictionary字典是一种可变容器,可存储任意数据对象字典中存在键值对key->value 键值对用冒号分割,每个键值对用逗号分割。字典中的键是唯一的,值可以不唯一1 字典的创建与访问dict={} #创建一个空字典dict1={"马云":"阿里巴巴","丁磊":"网易","马化腾":"腾讯"}print(dict)print(dict1)print(dict1['马云'])for...
正则表达式分组引用\1\2(核实学号截取信息是否有误)
# 分组引用s = "我的学号是20180302001,时间:20180302,编号:001"#s = "我的学号是20180302001,时间:20180303,编号:002"parter = r"(?P<date>\d{8})(\d{3}),时间:\1,编号:\2"ret = re.search(parter, s)# print(ret)print(ret.group()) 分...
django - migrate 重置
使用 django 过程中,发现丢失 migrate 的问题,在更新数据库的时候,需要 migrate 报错解决 删除数据库,重新建库 重置 migtate 这里说下 migrate 重置的问题 1.查看本地 migrate 历史 python3 manage.py showmigrations action_backend [X] 0001_initial ...
Python3 学习笔记6_字符串_20180224
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # 学习网站:www.runoob.com #**************************************************** # Python3 字符串 * #*************************...
Python3 学习笔记20_函数式编程-高阶函数-map/reduce_20180312
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # 学习网站:www.liaoxuefeng.com #**************************************************** # Python3 函数式编程-高阶函数-map/reduce * #************************...
Python3 学习笔记5_数字(Number)_20180223
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # 学习网站:www.runoob.com #**************************************************** # Python3 数字(Number) * #***********************...
Python3 学习笔记8_元组_20180227
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # 学习网站:www.runoob.com #**************************************************** # Python3 元组 * #*************************...
Python3 学习笔记14_递归函数_20180305
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # 学习网站:www.liaoxuefeng.com #**************************************************** # Python3 函数 * #************************...
Python3 学习笔记4_运算符_20180223
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # 学习网站:www.runoob.com #**************************************************** # Python3 运算符 * #*************************...
790



被折叠的 条评论
为什么被折叠?



