014day--python运算符和作业改进

一、运算符

% 取模,返回商的余数

10/3     3.33333333335

10//3    3   地板除,取整数,不是四舍五入

a = 3  b = 5  ----->   a<b and a==4 or b<10 and a>1

or前面的条件成立,则不走or后面的式子;or前面的条件不成立,则不考虑前面的式子,直接运算后面的

‘123‘.isdigit() 判断一个字符串是否可以转换为数字

身份判断:type(123) is  int    type(‘123‘) is  str

位运算:

128  64  32  16  8  4  2  1

a=60       0    0  1   1    1  1  0  0

b=13   0    0   0  0    1   1  0  1

&按位与      0    0   0  0    1   1  0  0

|按位或   0     0   1  1    1   1  0  1

二、作业

三级菜单(low版)

menu = {
    ‘北京‘:{
        ‘海淀‘:{
            ‘五道口‘:{
                ‘soho‘:{},
                ‘网易‘:{},
                ‘google‘:{}
            },
            ‘中关村‘:{
                ‘爱奇艺‘:{},
                ‘汽车之家‘:{},
                ‘youku‘:{},
            },
            ‘上地‘:{
                ‘百度‘:{},
            },
        },
        ‘昌平‘:{
            ‘沙河‘:{
                ‘老男孩‘:{},
                ‘北航‘:{},
            },
            ‘天通苑‘:{},
            ‘回龙观‘:{},
        },
        ‘朝阳‘:{},
        ‘东城‘:{},
    },
    ‘上海‘:{
        ‘闵行‘:{
            "人民广场":{
                ‘炸鸡店‘:{}
            }
        },
        ‘闸北‘:{
            ‘火车战‘:{
                ‘携程‘:{}
            }
        },
        ‘浦东‘:{},
    },
    ‘山东‘:{},
}
break_flag = True
while break_flag:
    for i in menu:
        print(i)
    choice1 = input(‘>:‘).strip()
    if len(choice1)==0:continue
    if choice1==‘q‘:
        break_flag = False
        continue
    if choice1 in menu:
        while break_flag:
            for j in menu[choice1]:
                print(j)
            choice2 = input(‘>>:‘).strip()
            if len(choice2)==0:continue
            if choice2==‘b‘:break
            if choice2==‘q‘:
                break_flag = False
                continue
            if choice2 in menu[choice1]:
                while break_flag:
                    for k in menu[choice1][choice2]:
                        print(k)
                    choice3 = input(‘>>>:‘).strip()
                    if len(choice3)==0:continue
                    if choice3==‘b‘:break
                    if choice3==‘q‘:
                        break_flag = False
                        continue
                    if choice3 in menu[choice1][choice2]:
                        while break_flag:
                            for m in menu[choice1][choice2][choice3]:
                                print(m)
                            choice4 = input(‘>>>>:‘)
                            if len(choice4)==0:continue
                            if choice4==‘b‘:break
                            if choice4==‘q‘:
                                break_flag = False
                                continue

购物车优化作业

shopping_cart = {} #购物车
product_list = [
                [‘iphone‘,5800],
                [‘小米手机‘,2000],
                [‘茅台酒‘,650],
                [‘笔‘,5],
                [‘电饭锅‘,200]
]
salary = int(input(‘Input your salary:‘))
while True:
    index = 0
    for product in product_list:
        print(index,product)
        index+=1
    choice = input(‘请输入商品编号:‘)
    if choice.isdigit():
        choice = int(choice)
        if choice>=0 and choice<=len(product_list):
            product = product_list[choice]
            if product[1] <= salary:
                if product[0] in shopping_cart:
                    shopping_cart[product[1]]+=1
                else:
                    shopping_cart[product[0]]=[product[1],1]
                salary-=product[1]
                print(‘购物车已添加:‘+product[0]+‘ ,您的余额为:‘+str(salary))
            else:
                print("工资不够,商品的价格为:%s ,还差:%s"%(str(product[1]),product[1]-salary))
        else:
            print(‘编号不存在,请重新输入‘)
    elif choice==‘q‘:
        print(‘-----------您已购买以下商品-----------‘)
        id_count = 1
        total_cost = 0
        print(‘id       商品      单价      数量      总价‘)
        for key in shopping_cart:
            print("%s\t\t%s\t\t%s\t\t%s\t\t%s"
                  %(id_count,
                    key,
                    shopping_cart[key][0],
                    shopping_cart[key][1],
                    shopping_cart[key][0]*shopping_cart[key][1]
                    )
                  )
            id_count+=1
            total_cost+=shopping_cart[key][0]*shopping_cart[key][1]
        print(‘您的总花费为:%s‘%total_cost)
        print(‘您的余额为:%s‘%salary)
        print(‘----------------end---------------‘)
    else:
        print(‘编号输入错误‘)

  

时间: 2024-11-06 11:41:27

014day--python运算符和作业改进的相关文章

python基础周作业

python基础周作业 1.执行python脚本的两种方法 脚本前面直接指定解释器 在脚本开始前声明解释器 2.简述位,字节的关系 每一个字节占用八个比特位 3, 简述ascii.unicode.utf- ‐8.gbk的关系 utf--‐8 <-- unicode <-- gbk <-- ascii 按此方向兼容 4..请写出"李杰"分别用utf- ‐8和gbk编码所占的位数 "李杰" 占用utf -8 占6字节 , gbk 占用4字节 5.pyt

Python学习day5作业-ATM和购物商城

Python学习day5作业 Python学习day5作业 ATM和购物商城 作业需求 ATM: 指定最大透支额度 可取款 定期还款(每月指定日期还款,如15号) 可存款 定期出账单 支持多用户登陆,用户间转帐 支持多用户 管理员可添加账户.指定用户额度.冻结用户等 购物车: 商品信息- 数量.单价.名称 用户信息- 帐号.密码.余额 用户可充值 购物历史信息 允许用户多次购买,每次可购买多件 余额不足时进行提醒 用户退出时 ,输出当次购物信息 用户下次登陆时可查看购物历史 商品列表分级显示 1

Python运算符及案例

Python 运算符 什么是运算符? 本章节主要说明Python的运算符.举个简单的例子 4 +5 = 9 . 例子中,4 和 5 被称为操作数,"+" 称为运算符. Python语言支持以下类型的运算符: 算术运算符 比较(关系)运算符 赋值运算符 逻辑运算符 位运算符 成员运算符 身份运算符 运算符优先级 接下来让我们一个个来学习Python的运算符. Python算术运算符 以下假设变量a为10,变量b为20: 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果

Python 运算符day04

Python语言支持以下类型的运算符: 算术运算符 比较(关系)运算符 赋值运算符 逻辑运算符 位运算符 成员运算符 身份运算符 运算符优先级 Python算术运算符 以下假设变量a为10,变量b为20: 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果 30 - 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -10 * 乘 - 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200 / 除 - x除以y b / a 输出结果 2 % 取模 -

3、Python运算符

3-1.Python运算符简介 1.python中常用的运算符 +:加 (可以是数字相加,也可以是字符串相加,字符串的+表示字符串的拼接) -:表示减或者取反 *:乘 (可以是两个数字相乘,也可以是字符串乘以数字,此时表示字符串重复若干次) **:幂运算 (如:2**3表示2的三次方) /:除运算 (当除数或者被除数中的任一个是小数时,相除的结果也会保留小数) //:两个数相除取其整数部分 %:两个数相除取其余数 &:按位与 (按位与是先把两个数都转化成二进制的数,然后按位进行与运算,只有两位都

Python运算符重载

运算符重载是指在方法(双下划线的特殊方法)中拦截内置的操作--当类的实例出现在内置操作中,Python会自动调用自定义的方法,并且返回自定义方法的操作结果. 可以让类拦截常规的Python运算. 可调用对象:__call__() 函数:内置函数.自定义函数.def.lambda 类 类方法 函数的属性: __doc__ __name__ __dict__ __code__ __globals__ 方法的属性: __doc__ __name__ __func__ __class__ __self_

python运算符重载2

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86

Python运算符说明

Python运算符说明 运算符 说明 lambda lambda表达式 or 布尔"或" and 布尔"与" not x 布尔"非" in,not in 成员测试 is,is not 同一性测试 <,<=,>,>=,!=,== 比较运算符 | 按位或 ^ 按位异或 & 按位与 <<,>> 移位 +,- 加法.减法 *,/,% 乘法.除法.取余 +x,-x 正负号 ~x 按位翻转 ** 指数

Python学习入门笔记(二):Python运算符

1.算术运算符 "+"加法:3+2=5 "-"减法:3-2=1 "*"乘法:3*2=6 "/"实数除法:3/2=1,3.0/2=1.5 "//"整数除法:5.6//2=2.0 "%"求余数:17%6=5 "**"求幂运算:2**3=8 2.赋值运算符 "="等于:x=3 "+="加等于:x+=2 "-="减等