python函数间相互调用案例

python函数间相互调用案例

  • ‘’‘案例一: 登录淘宝账号,并且将商品加入到购物车中(两个函数间的调用)’’’
islogin = False #用于判断用户是否登录的变量  默认是没有登录
#定义加入购物车函数
def add_shoppingcar(goodsname):
    if islogin and goodsname:
        print("成功将{}加入到购物车中".format(goodsname))
    else:
        #没有登录
        print("没有登录或者没有添加任何商品")

#定义登录函数
def login(username,password):
    if username == "wanggang" and password == "123456":
        print("登录成功")
        return True
    else:
        print("用户名或者密码错误")
        return False


username = input("请输入用户名")
password = input("请输入密码")

islogin= login(username,password)

add_shoppingcar("口红")
'''
案例:淘宝登录账号, 把商品加入购物车.(三个函数之间的调用)
1:首先要创建3个函数
  一个登录函数(包含用户名和密码)
  一个生成随机的验证码
  一个添加购物车函数
2:只有满足登录成功和有商品加入才能实现商品加入到购物车中

'''
#定义函数
import random


def gennerate_checkcode(n):

    s = "0123456789qwertyuioplkjhgfdszxcvbnmZXCVBNNMLKJHGFDSAQWERTYUIOP"
    code = ""
    for i in range(n):
        ran = random.randint(0,len(s)-1)
        code += s[ran]
    return code


#定义函数
def login():
    username = input("输入用户名")
    password = input("输入密码")
    code = gennerate_checkcode(4) #函数之间的调用
    print("验证码是:",code)
    codel = input("输入验证码")
    #接下来开始验证
    if code.lower() == codel.lower():
        if username == "wanggang" and password == "123456":
            print("登陆成功")
            return True
        else:
            print("用户名或者密码错误")
            return False
    else:
        print("验证码错误")

#定义函数

dly = False

def add_shoppingcar(goodsname):

    dly = login() #函数间的调用
    # goodsname = input("请将要购买商品加入购物车")
    if dly and goodsname:

        print("成功将{}添加到购物车".format(goodsname))
    else:
        print("登录未成功或者未有商品添加")

#调用函数
add_shoppingcar("口红")
回答: 在Python中,函数可以通过函数名来调用函数名实际上是指向一个函数对象的引用,可以将函数名赋给一个变量,相当于给这个函数起了一个别名。例如,可以将abs函数赋给变量a,然后通过a来调用abs函数。\[1\] 另外,Python还支持使用lambda表达式声明匿名函数。这些匿名函数可以作为自定义函数的实参传递给其他函数。例如,可以定义一个函数fun,接受两个参数和一个函数作为参数,并在函数内部调用传入的函数。通过lambda表达式可以直接在函数调用时定义匿名函数。\[2\] 需要注意的是,当调用函数时,如果传入的参数数量不正确,Python会报TypeError错误,并明确告诉你函数期望的参数数量。例如,调用abs函数时,只能传入一个参数,如果传入了多个参数,就会报错。\[3\] #### 引用[.reference_title] - *1* *3* [调用函数](https://blog.csdn.net/weixin_33853794/article/details/93073498)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [python 函数调用](https://blog.csdn.net/weixin_57038791/article/details/128228869)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值