函数的流程控制:

if...else...
a = 100
b = 200
if a == 100 and b ==300:
print('100,200')
elif b == 200:
print('等于200')
else:
print('不等于100也不等于200')  

while 条件

  循环体:

  如果条件为真,那么循环体则执行,执行完毕后再次循环,重新判断条件。。。
  如果条件为假,那么循环体不执行,循环终止

while
a = 0
while a <= 10:
if a%2 == 0:
print(a)
a += 1 l1 = ['a','b','c','d','e','f']
a = 0
while a < len(l1):
print(l1[a])
a += 1  

continue,break,pass
  break:跳出循环,并且break往后的代码将不会被执行
  continue:跳出本次循环,继续下一次循环,并且continue往后的代码将不会被执行
  pass;占位符,不执行任何操作,只是占位

while True:
result = input('==>:')
if not result:
continue
else:
print(result) n = 0
while n <= 15:
if n == 10:
pass
else:
print(n)
n += 1 

流程控制之for循环:
1 迭代式循环:for,语法如下
  for i in range(10):
    缩进的代码块
2 break与continue(同上)

for:遍历出每个元素,for可以循环字符串,列表,字典,集合,元组
for循环字典循环出来的是key

a = [1,2,3]
b = 'abcdefg'
d = {'name':'小米','age':25}
for i,u in d.items():
print(i) for i in range(11,0,-2):
print(i) 

实例:
猜拳游戏,石头剪刀布。

import random
print('*'*20)
print("***欢迎来到猜拳游戏***\n"
"提示(请输入数字)\n"
"1(石头),2(剪刀),3(布),0(退出游戏)\n"
"赢一局得3分,输一局扣3分,平局不得分\n")
y = 0
p = 0
s = 0
f = 0
while True:
play = input("请出拳:")
computer = random.randint(1, 3)
res = play.isdigit()
if res == True:
player = int(play)
if player <= 3 and player >=0:
if (computer==1 and player==2) or (computer==2 and player==3) or (computer==3 and player==1):
print("你输了,请再接再厉")
s += 1
elif computer == player:
print("平局")
p += 1
elif player == 0:
break
else:
print("你赢了!请继续加油")
y += 1
else:
print("输入错误,请重新输入!"
"提示:"
"1(石头),2(剪刀),3(布),0(退出游戏)")
else:
print("输入错误,请输入数字")
f = y*3 - s*3
print("你赢了%d局,输了%d局,平局%d,共计得分%s"%(y,s,p,f)) 

定义一个函数:

你可以定义一个由自己想要功能的函数,以下是简单的规则:

  • 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。
  • 任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
  • 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
  • 函数内容以冒号起始,并且缩进。
  • return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。
eg:
def ChangeInt(a):
a = 10
b = 2
ChangeInt(b)
print(b)
>>> 2 "修改传入的列表"
def changeme(mylist):
mylist.append([1, 2, 3, 4])
print("函数内取值: ", mylist)
return
mylist = [10, 20, 30]
changeme(mylist)
print("函数外取值: ", mylist)
>>> 函数内取值: [10, 20, 30, [1, 2, 3, 4]]
>>> 函数外取值: [10, 20, 30, [1, 2, 3, 4]] "打印任何传入的字符串"
def printme(str):
print(str)
return
printme(str="My string")
>>> My string # 可写函数说明
"打印任何传入的字符串"
def printinfo(name, age):
print("Name: ", name)
print("Age ", age)
return
printinfo(age=50, name="miki");
>>> Name: miki
>>> Age 50 "打印任何传入的参数"
def printinfo(args,*vartuple):
print(args)
for var in vartuple:
print(var)
return
printinfo(10)
printinfo(70, 60, 50)
>>> 10
>>> 70
>>> 60
>>> 50

python函数的基本语法<二>的更多相关文章

  1. python函数的基本语法<三>

    实参和形参: 定义函数括号里的一般叫形参 调用时括号里传递的参数一般叫实参 def students(age): print('my age is %s' % age) students(18) ag ...

  2. Python函数(十)-装饰器(三)

    如果多个函数想通过一个装饰器来实现不同的功能的话,可以给装饰器传入参数,让装饰器里的函数对参数进行判断,来实现不同的功能 # -*- coding:utf-8 -*- __author__ = &qu ...

  3. python函数的基本语法<一>

    函数: 一次定义,多次调用,函数可以变相看成变量函数的阶段: 1.定义阶段 2调用阶段 形参和实参: 定义阶段的参数叫形参,调用阶段的参数叫实参 函数的几种基本用法: #多变量 def test(na ...

  4. python函数语法学习

    Python函数 定义函数 在Python中,定义一个函数用def语句,一次写出函数名.括号中的参数和冒号:,函数返回使用return语句. def myDef(x): if x >= 0: r ...

  5. Python 基础语法(三)

    Python 基础语法(三) --------------------------------------------接 Python 基础语法(二)------------------------- ...

  6. 第三篇:python函数

    1.python函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你 ...

  7. 悉数 Python 函数传参的语法糖

    TIOBE排行榜是程序开发语言的流行使用程度的有效指标,对世界范围内开发语言的走势具有重要参考意义.随着数据挖掘.机器学习和人工智能相关概念的风行,Python一举收获2018年年度语言,这也是Pyt ...

  8. Python 函数基础、有序集合、文件操作(三)

    一.set 特点: set是一个无序且不重复的元素集合访问速度快:天生解决元素重复问题 方法: 初始化 >>> s1 = set()>>> print(type(s ...

  9. Python基础学习参考(三):内置函数

    一:内置函数 在第一篇文章中,我们简单的认识了一下print()函数和input()函数,也就是输入和输出,这些函数我们可以直接的调用,不要自己定义或者引入什么,对吧?想这样的函数就叫做内置函数.这里 ...

随机推荐

  1. MQ相关面试题

    如果你的简历中有写到MQ,那么面试官一般会问到如下几个问题,至少我在面试中经常常被问到,所以今天总结一下,有不对的地方还望多多包涵: 首先第一个问题,为什么要用MQ? 如果这个问题你都没考虑过,那么说 ...

  2. mac上git安装与github基本使用

    目录 安装git 创建ssh key.配置git 提交本地项目到GitHub 一.安装Git MAC安装Git 首先查看电脑是否安装Git,终端输入: git 1.通过homebrew安装Git 1. ...

  3. 直线扫描转换-DDA算法

    直线扫描转换-DDA算法 直线段的扫描转换算法 已知两个点,求直线. 为了在光栅显示器上用这些离散的像素点逼近这条直线,需要知道这些像素点的x,y坐标. 求出过P0,P1的直线段方程: y=kx+b ...

  4. Web渗透之mssql差异备份getshell

    简介 差异备份数据库得到webshell.在sql server 里dbo和sa权限都有备份数据库权限,我们可以把数据库备份称asp文件,这样我们就可以通过mssqlserver的备份数据库功能生成一 ...

  5. go-异常处理-error-panic-recover

    Go语言的函数可以一次返回多个结果.这就为我们温和地报告错误提供了语言级别的支持. func readFile(path string) ([]byte, error) { file, err := ...

  6. go-数组-切片-字典

    声明一个数组变量的同时为该变量赋值. ], , } 另一种便捷方法, 类型字面量中省略代表其长度的数字 , , } 对于数组来说,索引值既不能小于0也不能大于或等于数组值的长度. 索引值的最小有效值从 ...

  7. git clone下代码window与unix换行问题

    项目中避免不了会写一些shell脚本,使用ln软连接到一个目录.当git clone到windows中,ln连接显示无比怪异(如../xx),打开.sh文件后(仅仅是打开了),git status会看 ...

  8. VirtualBox NAT Network配置

    VirtualBox NAT Network配置(OSX上的) VirtualBox的5种连接方式 NAT :虚拟机之间不能互通 NAT网络 :本文对象 桥接 :一般情况下虚拟机无法设置静态IP,并且 ...

  9. 深入全面探究有未经处理的异常: 0xC00000FD: Stack overflow(栈溢出)问题!

    这两天一直遇到标题上的问题,我相信很多朋友在执行代码的时候都会遇到这样的问题,我在网上也找了很多的资料解决这个问题,虽然有些方法能解决,但是总觉得总结的不是很全面,这里我自己在相对全面的总结一下,如果 ...

  10. Spring Boot2 系列教程(十八)Spring Boot 中自定义 SpringMVC 配置

    用过 Spring Boot 的小伙伴都知道,我们只需要在项目中引入 spring-boot-starter-web 依赖,SpringMVC 的一整套东西就会自动给我们配置好,但是,真实的项目环境比 ...