Python学习:5.函数以及基础语句
函数
一、创建函数
Python的函数的学习是Python基础的一个重要部分,函数可以重复利用,减少代码量,接下来我们就学习一下如何创建一个函数,以及函数的使用。
1、创建一个函数的基本格式

def 函数名(形式参数):
函数体
return ""
二、函数的返回值
当以个函数执行的时候遇到return就会终止函数的执行,并将return的值传给调用函数赋予的变量。

三、函数的调用
使用函数的名字调用函数
def f1():
print('我被调用了') f1() #在这里函数被调用
四、向函数中传入参数
传入函数中的参数需要一一对应,在下面的示例中,alexsel将值传给name,50传给age,是第几个,就传递给第几个。

五、函数可以有默认参数
一个函数中的参数可以设置默认值,当没有对参数传递值得时候,就使用默认值,有默认值的参数应该放在没有默认参数的后面。

在定义有默认参数的函数时,需要注意以下:没有默认值得参数必须在前面,默认参数在后;
六.动态参数
1.可以接收多个值的动态参数

2.以及将接收多个参数转换为字典的动态参数


3、为动态参数传入 列表、字典、元组的示例:
将字典传入函数中不能直接传递,需要在传递的函数之前添加**

七、局部变量、全局变量
1、局部变量
局部变量一般在函数中定义,它的作用域也仅仅只在这个函数中可以调用,在函数之外不能调用。
def f1():
a=123
print(a)#这个a为局部变量只有这个函数里才能用
f1()
print(a)#在函数之外输出这个a会报错 输出结果:
123
然后是报错信息
2.全局变量
a = 1234 # 全局变量
b = 1000001 def f1():
a = 123 # 这个a为局部变量只有这个函数里才能用
print(a) # 在这里输出的是局部变量,在自己的函数中首先寻找自己函数中是否定义了这个变量,如果没有就使用全局变量
print(b) f1() 输出结果:
123
1000001
如果想在函数之外调用函数中定义的变量,可以在函数中定义一个全局变量
a = 1234 def f1():
global a #在这里定义了一个全局变量,在下面对全局变量进行重新赋值
a = 123
print(a) # 输出结果为:123 f1()
print(a) # 输出结果为:123 输出结果:
123
123
条件控制语句
if语句
简单if判断语句,当if后面的条件为真的时候,执行print('yes'),否则执行else里面的语句,print('No')
if True:
print('yes')
else:
print('No')
多次判断
首先判断pd是否大于零,否则判断pd是否小于零
pd = input('请输入数字:')
pd = int(pd) #使用input拿到用户输入的值得类型都是字符串
if pd > 0:
print('输入的为正值')
elif pd < 0:
print('输入的为负值')
else:
print('输入的为零')
三目运算
三目运算就是将if else语句通过一条语句表示出来,格式如下
name=值1 if 条件 else 值2
如果"条件"成立就把"值1"赋值给"name"
如果"条件"不成立就把"值2"赋值给"name"
name="alexsel" if 1==1 else "eric"
print(name) 输出结果:
alexsel
三目运算的的目的就是减少代码量。
循环语句
一、for循环
遍历输出有多个元素的数据,例如一个字符串,一个列表。使用in拿到后面变量里的单个元素。
str = "alexsel"
list = [1,2,3,'alexsel']
for i in str:
print(i)
print('----------------')
for k in list:
print(k) 输出结果:
a
l
e
x
s
e
l
----------------
1
2
3
alexsel
可以使用break提前结束循环
for i in range(10): #使用range一个可循环的0到9的数列。
print(i)
if i == 5:
print('结束循环')
break #如果不提前结束就输出1到9 输出结果:
0
1
2
3
4
5
结束
使用continue跳过一次循环
for i in range(10):
if i == 5:
continue #使用这个语句之后,跳过本次循环中在continue之后的语句,在这里跳过了print(i),5没有输出
print(i) 输出结果:
0
1
2
3
4
6
7
8
9
二、while循环
while一般形式如下
while 条件:
语句
当条件为真的时候一直执行,直到条件为假。
var = 1
while var < 10:
print(var)
var += 1 输出结果:
1
2
3
4
5
6
7
8
9
当条件一直为真,会无限循环。
var = 1
while var == 1:
print(var) 输出结果:
1
1
1
1
1
....
while循环中使用else,当while循环为假的时候,执行else中的语句。
i = 0
while i < 5:
print(i)
i += 1
else:
print('i等于5') 输出结果:
0
1
2
3
4
i等于5
Python中还有大量的内置函数,我们在以后的学习中会继续讲解,今天的学习到此结束了,如果有错误的地方欢迎大家指出。
Python学习:5.函数以及基础语句的更多相关文章
- python学习9 函数的基础知识
1.函数的定义 def func(): 2.函数的调用 func() 3.函数的返回值 #1.没有返回值 # (1)不写return # (2)只写return后面的代码不在继续执行,返回空,代表结 ...
- python学习之路-day2-pyth基础2
一. 模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...
- Python学习二:词典基础详解
作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7862377.html 邮箱:moyi@moyib ...
- Python学习一:序列基础详解
作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7858473.html 邮箱:moyi@moyib ...
- python学习8—函数之高阶函数与内置函数
python学习8—函数之高阶函数与内置函数 1. 高阶函数 a. map()函数 对第二个输入的参数进行第一个输入的参数指定的操作.map()函数的返回值是一个迭代器,只可以迭代一次,迭代过后会被释 ...
- python学习7—函数定义、参数、递归、作用域、匿名函数以及函数式编程
python学习7—函数定义.参数.递归.作用域.匿名函数以及函数式编程 1. 函数定义 def test(x) # discription y = 2 * x return y 返回一个值,则返回原 ...
- Python学习之路-Day2-Python基础2
Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...
- Python学习之路-Day2-Python基础3
Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...
- Python学习之路-Day1-Python基础
学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...
- python学习之路-day1-python基础1
本节内容: Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else ...
随机推荐
- python+selenium之框架设计
一.自动化测试框架 1.什么是自动化测试框架 简单来说,自动化测试框架就是由一些标准,协议,规则组成,提供脚本运行的环境.自动化测试框架能够提供很多便利给用户高效完成一些事情,例如,结构清晰开发脚本, ...
- IONIC调用原生的等待对话框
ngCordova提供了progressIndicator插件,用以方便的显示等待对话框,但是目前版本仅支持安卓版本.为了让苹果版本也显示,可以到以下地址下载通用的插件,JS部分的代码无需改变: ht ...
- python全栈学习笔记(二)网络基础之子网划分
阅读目录 一.ip地址基本知识 1.1 ip地址的结构和分类 1.2 特殊ip地址 1.3 子网掩码 1.4 ip地址申请 二.子网划分 2.1 子网划分概念 2.2 c类子网划分初探 2.3 子网划 ...
- vue + element-ui 制作下拉菜单(可配置路由、可根据路由高亮list、可刷新自动展开定位路由)
本篇文章分享一篇关于 vue制作可路由切换组件.可刷新根据路由定位导航(自动展开).可根据路由高亮对应导航选项 一.实现的功能如下: 1.可折叠导航面板 2.点击导航路由不同组件 ...
- XISE菜刀V13.0 官网版 XISE菜刀VIP破解版 XISE官网
诠释: 1. 破解VIP登陆限制 2.去后门 (自查) 下载地址 :https://pan.baidu.com/s/1eR2rUOM 查毒地址:http://a.virscan.org/a3983f3 ...
- git-day1-安装和基础使用
Git介绍 Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件 ...
- MARKS:路由器桥接
仅供参考…… 测试使用环境:Tplink & Tenda渣渣路由器.其他环境或不同. 设置注意事项:副路由器网段设置和主路由一致.主路由不需要开启WDS.副路由器开启WDS(连接ok,状态即显 ...
- mongoDB 创建数据库、删除数据库
创建数据库 use 命令 MongoDB 用 use + 数据库名称 的方式来创建数据库.use 会创建一个新的数据库,如果该数据库存在,则返回这个数据库. 语法格式 use 语句的基本格式如下: u ...
- Spring IoC 中的(Singleton)单例对象创建过程探索
前言 之前将spring framework 源码导入了idea,后来折腾调试了一下,于是研究了一下最简单的singleton对象在spring中是如何创建的.这里所谓的简单,就是指无属性注入,无复杂 ...
- springAOP(Aspect)权限访问页面
1.XML进行配置切面 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="h ...