函数

一、创建函数

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.函数以及基础语句的更多相关文章

  1. python学习9 函数的基础知识

    1.函数的定义 def  func(): 2.函数的调用 func() 3.函数的返回值 #1.没有返回值 # (1)不写return # (2)只写return后面的代码不在继续执行,返回空,代表结 ...

  2. python学习之路-day2-pyth基础2

    一.        模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...

  3. Python学习二:词典基础详解

    作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7862377.html 邮箱:moyi@moyib ...

  4. Python学习一:序列基础详解

    作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7858473.html 邮箱:moyi@moyib ...

  5. python学习8—函数之高阶函数与内置函数

    python学习8—函数之高阶函数与内置函数 1. 高阶函数 a. map()函数 对第二个输入的参数进行第一个输入的参数指定的操作.map()函数的返回值是一个迭代器,只可以迭代一次,迭代过后会被释 ...

  6. python学习7—函数定义、参数、递归、作用域、匿名函数以及函数式编程

    python学习7—函数定义.参数.递归.作用域.匿名函数以及函数式编程 1. 函数定义 def test(x) # discription y = 2 * x return y 返回一个值,则返回原 ...

  7. Python学习之路-Day2-Python基础2

    Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...

  8. Python学习之路-Day2-Python基础3

    Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...

  9. Python学习之路-Day1-Python基础

    学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...

  10. python学习之路-day1-python基础1

    本节内容: Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else ...

随机推荐

  1. Log4j的配置文件

    附:Log4j比较全面的配置 Log4j配置文件实现了输出到控制台.文件.回滚文件.发送日志邮件.输出到数据库日志表.自定义标签等全套功能. log4j.rootLogger=DEBUG,consol ...

  2. 【源码分析】cocostudio场景编辑器的触发器逻辑

    去看场景编辑器的差不多都可以看到有模拟器的设置(菜单栏的设置).默认是选择cocostudio安装路径中的Simulator.exe这个模拟器,看官网介绍是自己可以选择模拟器,而且公开源代码可以按需设 ...

  3. 配置spark集群

    配置spark集群 1.配置spark-env.sh [/soft/spark/conf/spark-env.sh] ... export JAVA_HOME=/soft/jdk 2.配置slaves ...

  4. Anaconda套件,精簡版miniconda

    雖然Anaconda會預先安裝豐富的套件模組,尤其是在數據科學領域方面,有非常豐富的寶藏, 大多範例或教學或許為了節省後續的麻煩,不解釋為什麼,直接就安裝Anaconda 就對了: 但是大部份的模組套 ...

  5. 合并两个数组 以KEY 作为键

    <?php     $a= array(         array(             'ID'=> 2         ) );   $b= array(         arr ...

  6. 使用ArcSDE SQL操作怎么获得新对象的objectid、GUID

    arcgis9.3.1 现在大家很喜欢使用ArcSDE的SQL操作,这种方式在特殊的环境要求下显得比较方便,那么使用SQL操作最多的是读和写,而写最多的就是新建一个对象,那么翻译成SQL语言就是使用i ...

  7. phoneGap的Android下编写phonegap 插件

    一. javascript 端的编写  第一个参数 成功的回调函数 第二个参数 失败的回调函数 第三个参数 是插件的类名称,也就是后台java文件的类名 第四个参数 执行的 action 名称     ...

  8. ASP.NET SingalR + MongoDB 实现简单聊天室(三):实现用户群聊,总结完善

    前两篇已经介绍的差不多了,本篇就作为收尾. 使用hub方法初始化聊天室的基本步骤和注意事项 首先确保页面已经引用了jquery和singalR.js还有对应的hubs文件,注意,MVC框架有时会将jq ...

  9. es6之数组方法

    //兼容插件 babel-polyfill values()等存在兼容问题,需要加载babel-polyfill插件 .keys()  获取数组的key值 .values()  获取数组的value值 ...

  10. 【AngularJS学习笔记】Java Script "use strict" 严格模式

    ---恢复内容开始--- 学习Angular的时候,发现好多优秀的源码中,JS文件的最上面,都会写上"use strict"; 这几个字符,搜了一下,找到一篇比较不错的文章,抄过来 ...