当前位置: 首页 > news >正文

python学习之路——作业 day6(18/9/18)

#简单购物车,要求如下:
实现打印商品详细信息,用户输入商品名和购买个数,则将商品名,价格,购买个数加入购物列表,如果输入为空或其他非法输入则要求用户重新输入  
msg_dic={
'apple':10,
'tesla':100000,
'mac':3000,
'lenovo':30000,
'chicken':10,
}
good_list=[]
while True:
for k,v in msg_dic.items():
print(k,v)
good_name= input('请输入商品名:').strip()
if good_name not in msg_dic:
print('请重新输入商品名:')
continue
while True:
num = input('请输入商品数量').strip()
if not num.isdigit():
continue
num = int(num)
msg=(good_name,msg_dic[good_name],num)
good_list.append(msg)
break
print(good_list)

====================================================
1 有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中

即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}


list1={'k1':[],'k2':[]}
l=[11,22,33,44,55,66,77,88,99,90]
for i in l:
if i >66:
list1['k1'].append(i)
elif i<66:
list1['k2'].append(i)
print(list1)

=====================================================
一.关系运算
  有如下两个集合,pythons是报名python课程的学员名字集合,linuxs是报名linux课程的学员名字集合
  pythons={'alex','egon','yuanhao','wupeiqi','gangdan','biubiu'}
  linuxs={'wupeiqi','oldboy','gangdan'}
  1. 求出即报名python又报名linux课程的学员名字集合
print(pythons&linuxs)   2. 求出所有报名的学生名字集合
print(pythons|linuxs)   3. 求出只报名python课程的学员名字
print(pythons-linuxs)   4. 求出没有同时这两门课程的学员名字集合
  print(pythons^linuxs)


二.去重

   1. 有列表l=['a','b',1,'a','a'],列表元素均为可hash类型,去重,得到新列表,且新列表无需保持列表原来的顺序
l=['a','b',1,'a','a']
print(list(set(l)))
   2.在上题的基础上,保存列表原来的顺序   
l1=[]
for i in l:
if i not in l1:
l1.append(i)
print(l1)

3.去除文件中重复的行,肯定要保持文件内容的顺序不变  
4.有如下列表,列表元素为不可hash类型,去重,得到新列表,且新列表一定要保持列表原来的顺序
l=[ {'name':'egon','age':18,'sex':'male'},
{'name':'alex','age':73,'sex':'male'},
{'name':'egon','age':20,'sex':'female'},
{'name':'egon','age':18,'sex':'male'},
{'name':'egon','age':18,'sex':'male'}, ]  
 
 
li=[]
for i in l:
if i not in li:
li.append(i)
print(li)




转载于:https://www.cnblogs.com/unbrokenlin/p/9671248.html

相关文章:

  • Kotlin基础学习笔记 (三)
  • 表管理
  • 《手把手教你学DSP-基于TMS320F28335》书中的错误
  • rxjs - 创建数据流
  • Visual-UIElement-FrameworkElement,带来更多功能的同时也带来了更多的限制
  • 源码探究Java_HashMap
  • python-第一个程序
  • 【cs231n】神经网络学习笔记3
  • 实验吧 看起来有点难(手工注入加sqlmap注入)
  • 转: CSS3 @media 用法总结
  • Python_configparser模块
  • js 中的几个假值
  • Asp.Net MVC中Action跳转小结
  • Math.round(),Math.ceil(),Math.floor()的区别
  • Betsy's Tour 漫游小镇(dfs)
  • 【译】JS基础算法脚本:字符串结尾
  • Angularjs之国际化
  • Apache的基本使用
  • Java编程基础24——递归练习
  • JS函数式编程 数组部分风格 ES6版
  • PhantomJS 安装
  • rabbitmq延迟消息示例
  • Redux 中间件分析
  • Solarized Scheme
  • Sublime text 3 3103 注册码
  • vue数据传递--我有特殊的实现技巧
  • webpack项目中使用grunt监听文件变动自动打包编译
  • Web标准制定过程
  • WinRAR存在严重的安全漏洞影响5亿用户
  • yii2中session跨域名的问题
  • 阿里云ubuntu14.04 Nginx反向代理Nodejs
  • 从0搭建SpringBoot的HelloWorld -- Java版本
  • 力扣(LeetCode)357
  • 聊聊flink的TableFactory
  • 少走弯路,给Java 1~5 年程序员的建议
  • 设计模式 开闭原则
  • 使用 5W1H 写出高可读的 Git Commit Message
  • 通过npm或yarn自动生成vue组件
  • 小李飞刀:SQL题目刷起来!
  • 用mpvue开发微信小程序
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • UI设计初学者应该如何入门?
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • 第二十章:异步和文件I/O.(二十三)
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • #if 1...#endif
  • #数学建模# 线性规划问题的Matlab求解
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (2)Java 简介
  • (LeetCode 49)Anagrams
  • (二)linux使用docker容器运行mysql
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (九)信息融合方式简介
  • (南京观海微电子)——I3C协议介绍
  • (强烈推荐)移动端音视频从零到上手(下)