今天干了啥?喂了喂龟,看了看鱼。。。

然后就是学习了两个模块:sys模块和os模块,突然觉得python真的好,只要英语学的好,看代码超级舒服的说,嗯,我要好好学英语,今天背了几个啥,唉。写完博客再背几个。

sys.path是用来显示环境变量的,环境变量是啥,有问题找百度,唉,懒得查。。。没救了。 反正用了sys.path可以打印出好多路径,貌似很多模块啥的都放在那。

sys.argv是用来打印本python文件的相对路径的吧。。。不知道怎么用。什么运行程序时在文件名后面用空格隔开,打上1 2 3,在程序里print(sys.argv[2]) 还可以把2给输出出来,不知道有啥用。。。

os.system("dir")会把目录输出到屏幕上,但是没有结果的,也就是不能把它存起来。想要存起来,就用os.popen("dir").read(),为啥要加read(),是因为前面那部分相当于只搞出了地址,得用read()把内容读出来。 os.mkdir("newdi")新建一个目录。

有个小知识点,浮点数和小数是不一样的,查查百度,嗯,好吧,查了也还是不懂,反正两者又区别。。。

然后就是有个三元运算,额a,b,c= 1,3,5    d=a if a>b else c  结果咧d= 5 。。。。。。不知道干啥用的,留个印象先。

哦。。。 应该是这样,result = 值1  if 条件  else 值2    满足条件就赋值1,不然就赋值2.

学个英文单词:encode,编码  decode,解码      用于string和bytes类型之间的转换  字符串和二进制之间的转换  encode(‘utf-8’)

学习列表:切片时中括号[a:b],冒号隔开。切片的时候,左开又闭不写就是默认开头结尾,可以正着数,也可以倒着来,比如-1就是最后一个。

list.append("object"),在列表末尾加一个

list.insert(index,"object") 在索引处差入某值,只能一个一个的插。

list.index("object")  某个值的索引,就是下标。

list.reverse()   反转,就是把列表倒过来排。

list.count("object")  计数,看有多少个这样的值。

list.sort()   排序,从小到大按ASCII码来,特殊符号,先数字,在大写字母,再小写字母。

list.[index] = "object"  替换。

list.remove("object") ,del list[index], list.pop[index]    三种删除方式。

list.clear()  清空列表。

list.extend(list_2)  合并列表。

list.copy()  是浅复制,就是说只能复制第一层,如果列表元素里有嵌套的话,那个改任何一个,复制的那个会一起变,因为嵌套的话,复制的是指针,要注意。

import copy   然后list_2 = copy.deepcopy(list)  是深复制,那两者之间就不会相互影响了。

在输入字符串时,要有一个判断:  if str.isdigit() :    这是用来判断输入的字符串是不是数字的字符串   这样判断以后再把它强制转换成int  不然没啥意义。

还有一个 for index, item in enumerate(list)     用来便利列表的下标和值

元组,tuple  是一种一旦创建以后就不能修改的只读列表。

print打印时的一个骚操作:  高亮显示:   \033[31;1m%s\033[0m      31红色可换别的   %也可以换,其他为固定格式,想骚那就死背下来。。。

不早了记英文单词吧唉。。。字符串用法

capitalize  首字母大写 ,  center  放中间 ,     ljust   放左边, rjust  放右边,      endwith   判断是否以啥啥啥结尾,   find  查找,返回索引,

isalnum  是不是字母和数字      isalpha    是不是纯数字     isidentifier  是不是合法标识符       islower  isupper  是不是大小写     isspace   是不是空格。。。

istitle    是不是每个单词首字母大写     lower  upper  全变小写,大写    replace("object", num)    替换j几个    split(“+”) 用+或别的把字符串分成列表

swapcase   大变小写,小变大写      lstrip  strip  rstrip   取左边,两边,右边空格回车

重点:str=  “+”.join(["1","2","3"])     打印为 1+2+3

加密操作: p = str.maketrans("abcdefg", "1234567")

print("object".translate(p))     自己搞个秘文上去 哈哈哈哈

字典    dic.get("key")  取值,若没有,输出none

if object in dic   判断是否有object  (key)

dic.keys()  打印所有的key

dic.setdefault("key": "value")    先找,若没有就加进去

dic.update(dic_2)    key有交叉就覆盖,无则加

dic.items()     把字典变成列表

方法:    for i in dic:

print(i,dic[i])        省内存!

最后贴个作业 不多说 睡觉碎觉

一:

  1. #!usr/bin/env/ python
  2. # -*- coding:utf-8 -*-
  3. # Author:XiaoFeng
  4.  
  5. dic = {"中国": {"湖北省": {"武汉市": ["武昌区", "洪山区"], "黄石市": "阳新县"},
  6. "四川省": {"成都市": "某某村"}},
  7. "美国": {"加州": {"某县": "某小镇"}}}
  8.  
  9. while True:
  10. for i in dic:
  11. print(i)
  12. choice1 = input("请输入想去哪1:")
  13. if choice1 in dic:
  14. for i1 in dic[choice1]:
  15. print("\t", i1)
  16. while True:
  17. choice2 = input("请输入想去哪2:")
  18. if choice2 in dic[choice1]:
  19. for i3 in dic[choice1][choice2]:
  20. print("\t\t", i3)
  21. while True:
  22. choice3 = input("请输入想去哪3:")
  23. if choice3 in dic[choice1][choice2]:
  24. for i4 in dic[choice1][choice2][choice3]:
  25. print("\t\t\t", i4)
  26. exit()
  27. elif choice3 == "b":
  28. break
  29. else:
  30. print("无此地点,请重新输入!")
  31. continue
  32. elif choice2 == "b":
  33. break
  34. else:
  35. print("无此地点,请重新输入!")
  36. continue
  37. else:
  38. print("无此地点,请重新输入!")
  39. continue

二:  很抠脚  本来想存文件里的,还不会把字典存文件,唉。

  1. #!usr/bin/env/ python
  2. # -*- coding:utf-8 -*-
  3. # Author:XiaoFeng
  4.  
  5. shopping_car = []
  6. list = [("Iphone", 8500),
  7. ("Mac Pro", 11200),
  8. ("Starebuck Latte", 31),
  9. ("Alex python", 81),
  10. ("Bike", 800)]
  11.  
  12. cmd = input("是否想要修改产品信息:")
  13. if cmd == "y":
  14. Name = input("商品名:")
  15. Price = input("价格:")
  16. list.append((Name, Price))
  17.  
  18. file = open("balance", "r")
  19. money = file.read()
  20. file.close()
  21. if money.isdigit():
  22. money = int(money)
  23.  
  24. if not money:
  25. while True:
  26. money = input("请输入您的余额:")
  27. if money.isdigit():
  28. file = open("balance", "a")
  29. file.write(money)
  30. file.close()
  31. money = int(money)
  32. break
  33. else:
  34. print("输入错误,请输入数字!")
  35.  
  36. while True:
  37. for index, item in enumerate(list):
  38. print(index, item)
  39.  
  40. user_choice = input("请输入您想要的选择:")
  41. if user_choice.isdigit():
  42. num = int(user_choice)
  43. if num >= 0 and num < len(list):
  44. if list[num][1] <= money:
  45. money = money - list[num][1]
  46. file = open("balance", "w")
  47. file.write(str(money))
  48. file.close()
  49. shopping_car.append(list[num])
  50. file = open("record", "a")
  51. file.write(str(list[num]))
  52. file.close()
  53. print("成功添加商品:\033[41;1m%s\033[0m,您的余额为:\033[32;1m[%d]\033[0m" % (list[num][0],money))
  54. else:
  55. print("抱歉,您的余额为:\033[31;1m%s\033[0m,买不起哈哈哈!" % money)
  56. else:
  57. print("无此商品,请重新输入!")
  58. continue
  59. elif user_choice == "q":
  60. print("--------shopping list--------")
  61. for i in shopping_car:
  62. print(i)
  63. print("您的余额为:%d" % money)
  64. exit()
  65. else:
  66. print("错误输入,请重新输入!")
  67. continue

python3 购物车的更多相关文章

  1. python3 购物车小程序,余额写入文件保存

    python3 购物车小程序,余额写入文件保存 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hiuhung Wan goods = ( ...

  2. python3购物车

    python3实现购物车小程序,优化后将程序分成函数,用文件注册和验证用户名密码. #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 20 ...

  3. python3 购物车 增改查终极版~

    还是先来条NLP再说,快没了,以后想抄还没有... 十一,没有挫败,只有回应讯息 “挫败”只是指出过去的做法得不到预期的效果,是给我们需要改变的信号. “挫败”只是在事情画上句号时才能用上,欲想事情解 ...

  4. python3 购物车练习

    # 购物车# 功能要求:# 要求用户输入总资产,例如:2000# 显示商品列表,让用户根据序号选择商品,加入购物车# 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功.# 可充值.某商品 ...

  5. Python3 list与循环练习(购物车)

    #!/usr/bin/env python3 # -*- coding: utf-8 -*- # Author;Tsukasa product_list = [ ('Iphone',5800), (' ...

  6. Python3.5 Day2作业:购物车程序

    需求: 1. 启动程序后,用户通过账号密码登录,然后打印商品列表. 2. 允许用户根据商品编号购买商品. 3. 用户选择商品后,检测余额是否足够,够就直接扣款,不够就提醒充值. 4. 可随时退出,退出 ...

  7. python3 练习题(用函数完成登录注册以及购物车的功能)

    ''' 用函数完成登录注册以及购物车的功能 作业需求: 1,启动程序,用户可选择四个选项:登录,注册,购物,退出. 2,用户注册,用户名不能重复,注册成功之后,用户名密码记录到文件中. 3,用户登录, ...

  8. python3 练习题(购物车)

    '''购物车程序需求:1.启动程序后,让用户输入工资,然后打印商品列表2.允许用户根据商品编号购买商品3.用户选择商品后,检查余额是否够,够就直接扣款,不够就提醒4.用户可一直购买商品,也可随时退出, ...

  9. Python3学习之路~2.2 简单的购物车程序

    程序:购物车程序 需求:启动程序后,让用户输入工资,然后打印商品列表允许用户根据商品编号购买商品用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 可随时退出,退出时,打印已购买商品和余额 代码 ...

随机推荐

  1. apache2.4 虚拟主机配置

    网上教程很多,仅记录我的配置,可供参考 一.修改httpd.conf 打开appserv的安装目录,找到httpd.conf文件,分别去掉下面两行文字前面的#号. #LoadModule vhost_ ...

  2. DoxygenToolKit.vim 插件配置

    如何才能既享受 Doxygen 的强大功能,同时又避免大量的重复性的注释内容? 解决思路: 让编辑器来替我们写那些格式和内容固定的部分,我们只负责写真正的有效内容. 所以,答案就是:Vim + Dox ...

  3. CoreData的简单使用

    一.基础知识: CoreData是对SQLite的封装,使用的时候比较方便,减少对SQL语句的使用. CoreData中的核心对象 NSManagedObjectModel:代表Core Data 的 ...

  4. Asp.Net Core 2.0 项目实战(6)Redis配置、封装帮助类RedisHelper及使用实例

    本文目录 1. 摘要 2. Redis配置 3. RedisHelper 4.使用实例 5. 总结 1.  摘要 由于內存存取速度远高于磁盘读取的特性,为了程序效率提高性能,通常会把常用的不常变动的数 ...

  5. REST风格框架实战:从MVC到前后端分离(附完整Demo)

    既然MVC模式这么好,难道它就没有不足的地方吗?我认为MVC至少有以下三点不足:(1)每次请求必须经过“控制器->模型->视图”这个流程,用户才能看到最终的展现的界面,这个过程似乎有些复杂 ...

  6. Spring cloud整体框架

    研究了一段时间spring boot了准备向spirng cloud进发,公司架构和项目也全面拥抱了Spring Cloud.在使用了一段时间后发现Spring Cloud从技术架构上降低了对大型系统 ...

  7. js文件引用的问题顺带复习css引用

    js文件包含在<script>块中用scr引用,css在link和@import来引用,css不是本篇的重点,直接引用一个博主的总结: “ 区别1:link是XHTML标签,除了加载CSS ...

  8. VS2012中出现“无法启动程序...debug\abc.exe,系统找不到指定文件”的问题!

    VS 2005在生成可执行文件时使用了一种新的技术,该技术生成的可执行文件会伴随生成一个清单文件(manifest file)(.manifest后缀文件)(其本质上是XML文档,你可以用文本编辑器打 ...

  9. 错误:编码GBK的不可映射字符

    当Java源代码中包含中文字符时,我们在用javac编译时会出现"错误:编码GBK的不可映射字符". 由于JDK是国际版的,我们在用javac编译时,编译程序首先会获得我们操作系统 ...

  10. baseFileWriter.go

    package blog4go import ( "fmt" "os" "sync" "time" ) const ( ...