Python学习:5、if语句,while语句,函数以及商城示例

条件控制语句

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

函数

一、创建函数

1、创建一个函数的基本格式

def 函数名(形式参数):
    函数体
    return "123"
   

二、函数的返回值

函数执行了return之后就不再执行下面的代码,并且将返回的值给调用函数之后赋予的变量。

def f2():
    name = ‘alexsel‘
    return name

tem = f2()
print(tem)

输出结果:
alexsel

三、函数的调用

使用函数的名字调用函数

def f1():
    print(‘我被调用了‘)

f1()    #在这里函数被调用

四、向函数中传入参数

传入函数中的参数需要一一对应,在下面的示例中,alexsel将值传给name,50传给age,是第几个,就传递给第几个。

def obj(name,age):
    return name+‘的年龄为‘+str(age) #这里传入的参数的类型为数值,我们要做字符串拼接,将它转换为字符串

str = obj(‘alexsel‘,50)
print(str)

输出结果:
alexsel的年龄为50

五、函数可以有默认参数

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

def drive(name="我"):  #name这个有默认参数,有默认参数的应放在无默认参数的后面,否则报错,无默认参数的必须传参数,有默认参数的可以不传参数
    temp=name+"开车"
    return temp
ret=drive("you")
print(ret)
ret=drive("he")
print(ret)
ret=drive()
print(ret)

输出结果:
you开车
he开车
我开车

六.动态参数

1.可以接收多个值的动态参数

def a1(*a):  # 动态参数,可以接受多个值
    print(a, type(a))  # 现在a的类型为元组,把你传入的实参当作元组的元素

a1(123, 3, 444, 555, [11, 22, 33])  # 这里的传入的列表视为一个元素

输出结果:
((123, 3, 444, 555, [11, 22, 33]), <type ‘tuple‘>)

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

def a2(**b):  # 动态参数,接收的参数转换为字典
    print(b, type(b))  # b的类型为字典,传过来的参数转换为字典

a2(k1=123, k2=345)

输出结果:
({‘k2‘: 345, ‘k1‘: 123}, <type ‘dict‘>)
def a3(p, *a, **aa):        #这里的a拿到传入的第一个参数,*a拿到不是字典类型的参数,**拿到传入是字典类型的参数
    print(p, type(p))
    print(a, type(a))
    print(aa, type(aa))

a3(11, 22, 33, k1=123, k2=456)
# 在这里自动把11给p,22,33给*a,把k1=123,k2=456给**a
# **要在*前面,这两个要在一般参数数的后面,而且实参也要按此排序

输出结果:
(11, <type ‘int‘>)
((22, 33), <type ‘tuple‘>)
({‘k2‘: 456, ‘k1‘: 123}, <type ‘dict‘>)

3、为动态参数传入 列表、字典、元组的示例:

将字典传入函数中不能直接传递,需要在传递的函数之前添加**

def f1(*args):
    print(args)

li = [11, 22, 33]
f1(li)  # 这样传参数则这个args元组的第一个元素为列表[11,22,33]
f1(*li)  # 这样传参数是会把这个列表的每一个元素一一传过去结果会是
# 这个列表的每一个元素会成为args元组的每一个元素(11,22,33)

def f2(**kwargs):
    print(kwargs)
dic = {"k1": 123, "k2": "aas"}
#f2(dic)  # 这样传参数报错
f2(k1=dic)  # 这样传参数会变成kwargs={"k1":{"k1":123,"k2":"aas"}
f2(**dic)  # 要想把dic里的元素一个一个传过去,格式为kwargs={"k1":123,"k2":"aas"},需要在dic前加**

输出结果:
([11, 22, 33],)
(11, 22, 33)
{‘k1‘: {‘k2‘: ‘aas‘, ‘k1‘: 123}}
{‘k2‘: ‘aas‘, ‘k1‘: 123}

七、局部变量、全局变量

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

Python中还有大量的内置函数,我们在以后的学习中会继续讲解,今天的学习到此结束了,如果有错误的地方欢迎大家指出。

原文地址:https://www.cnblogs.com/liudi2017/p/9179536.html

时间: 2024-08-10 18:46:34

Python学习:5、if语句,while语句,函数以及商城示例的相关文章

python学习第三周(下 函数)

本节内容 1. 函数基本语法及特性 2. 参数与局部变量 3. 返回值  嵌套函数 4.递归 5.匿名函数 6.函数式编程介绍 7.高阶函数 8.内置函数 温故知新 1. 集合 主要作用: 去重 关系测试, 交集\差集\并集\反向(对称)差集 2. 元组 只读列表,只有count, index 2 个方法 作用:如果一些数据不想被人修改, 可以存成元组,比如身份证列表 3. 字典 key-value对 特性: 无顺序 去重 查询速度快,比列表快多了 比list占用内存多 为什么会查询速度会快呢?

python学习之第十六课时--函数的作用及定义

例子: 当我们知道半径r的值时,就可以根据公式计算出面积,假设我们需要计算3个不同大小的圆的面积: #!/usr/bin/env python # -*- coding:utf-8 -*- r1=2.34 r2=7.28 r3=10.32 s1=3.14*r1*r1 s2=3.14*r2*r2 s3=3.14*r3*r3 当代码有规律的重复的时候,每次写3.14*x*x不仅很麻烦,而且如果要把3.14改成3.14159的时候得全部替换 有了函数,我们不再每次写s=3.14*x*x,而是写成更有意

python学习之路-第三天-函数

函数 函数的定义关键字:def 使用global语句可以清楚地表明变量是在外面的块定义的 示例:(函数运行完毕后x的值是2) #!/usr/bin/python # Filename: func_global.py def func(): global x print 'x is', x x = 2 print 'Changed local x to', x x = 50 func() print 'Value of x is', x 可以给形参加上默认值,默认参数是不可变的,而且只有在形参表末

Python 学习笔记(一)语句,变量,函数

今天抽时间看了一下python.感觉很好,它与编译性语言不同.c,c++,java,c# 等都是编译性语言,也就是需要先进行编译,然后 在链接,才生成二进制可运行文件(java,C#除外,需要虚拟机才可以运行),但是也需要编译. python 是一种典型的解释性语言.他的最大的特点就是类似于脚本语言,例如:Shell编程,js,等,不需要编译. 今天学得知识为python的基本语法:包括:语句,定义变量,定义函数.下面进行对所学习的内容进行一下总结,以便以后能够温故 而知新 . 语句: 首先介绍

Python学习:两种循环语句for和while

1:先上图 2:知识总结 Python的循环有两种,一种是for...in循环,依次把list或tuple中的每个元素迭代出来,看例子: names = ['Michael', 'Bob', 'Tracy'] for name in names: print name 执行这段代码,会依次打印names的每一个元素: Michael Bob Tracy 所以for x in ...循环就是把每个元素代入变量x,然后执行缩进块的语句. 再比如我们想计算1-10的整数之和,可以用一个sum变量做累加

python学习(4)循环语句

循环语句主要有两个,一个是 while :一个是for in range() 以案例来说明: 写一个猜数字的游戏,正确的数字等于38.如果数字等于38,则提示正确,然后结束:如果数字大于38则提示大了,小于38则提示小了. 可以猜3次,超过3次则显示尝试次数过多. 先以while写一段代码: 1 #!/usr/bin/env python 2 # -*- coding: UTF-8 -*- 3 # Author:show530 4 5 6 right_number=38 7 count=0 #定

python学习笔记二:if语句及循环语句,断点,模块,pyc

if语句 注意:语句块中的内容要强制缩进,否则出错.IndentationError,缩进错误 所有代码,如果是顶级的,必须顶格写,前面不能有空格 if - : - elif - : - else: - while语句 while -: - else: - for语句 for i in range(10)--i默认0,步长默认1,最大为9 for i in range (0,2,10)--从0开始,步长为2,最大为8 for  i   in range(-): - else: - break--

Python学习(5)条件语句

目录 条件语句 简单的语句组 Python 条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false. Python 编程中 if 语句用于控制程序的执行,基本形式为: if 判断条件: 执行语句…… else: 执行语句…… 其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以

Python学习6——条件,循环语句

条件语句 真值也称布尔值. 用作布尔表达式时,下面的值都将被视为假:False None  0   ""   ()   []   {}. 布尔值True和False属于类型bool,而bool与list.str和tuple一样,可用来转换其他的值. >>> bool('I think,therefore I am') True >>> bool(10) True >>> bool('') False >>> boo