#系统自带的模块(库)
1 import sys 2 print(sys.path) 3 print(sys.argv) 4 print(sys.argv[2])
1 import os 2 3 cmd_res = os.system("dir") #只执行命令,不保存结果 4 cmd_res = os.popen("dir") #指向内存地址 5 cmd_res = os.popen("dir").read() 6 print("-->",cmd_res) 7 8 os.mkdir("new_dir") #创建一个新的目录
#第三方模块(需要安装的库)
#先写一个登陆接口
import login #默认从当前目录找

如果既不在当前目录,也不在环境目录下就会报错。两个解决方法:1.把login.py拷贝到环境目录中site-packages下 2.加一条环境目录,在new_dir中也寻找。
pyc是个什么?
pyc是个介于解释器和源码之间的编译码,Python第一步先在内存中的PythonCodeObject编译,然后生成pyc文件,再进行通过解释器解释pyc文件。依靠时间先后关系来判断pyc是否是最新的代码集合。
Python数据类型
整型、浮点型、字符串、布尔值
Python 3里区分了字节和字符串,文本总是Unicode,由str类型表示,二进制数据(视频等)由bytes类型表示,不能互相拼接和搜索。而Python 2中不作区分。
Python 3中所有的数据传输都是二进制的形式。
encode编码,decode解码
1 msg = “我爱北京天安门” 2 print(msg) 3 print(msg.encode()) #print(msg.encode(encoding="utf-8")) 4 print(msg.encode(encoding="utf-8").decode(encoding="utf-8"))
三元运算
a,b,c = 1,3,5
d = a if a>b else c #如果a>b,则d=a,否则d=c
列表
1 lists = ["A","B","C","D"] 2 print(lists[2]) #切片,顾头不顾尾 3 lists.append = ("E") #追加一条在列表最后 4 lists.insert = (1,"X")#把X插到B的前面,需要插到哪个位置前面,就填几 5 lists[1] = "Y" #把X改成Y 6 lists.remove("Y")#删除Y 7 del lists[1]#删除Y 8 lists.pop(1)#删除Y,不填下标的话默认删除最后一个位置的值 9 print(lists.index("C"))#从列表中找到C的位置,返回下标 10 print(lists.count("C"))#从列表中找出C出现的个数 11 lists.reverse()#反转列表 12 list2 = [1,2,3,4] lists.extend(list2)#将list2扩展到list1上 13 lists.sort()#排序,按照ASCII码,先特殊符号,再数字,再字母
list3 = lists.copy()#完全拷贝一份lists到list3,这个copy是浅copy,只拷贝第一层列表
举例:
1 lists = ["A","B","C","D",["x","y"]] 2 list3 = lists.copy() 3 print(lists) 4 print(list3) 5 lists[4][0] = "XXX" 6 print(lists) 7 print(list3)#把第二层列表中的x改成XXX后,list3中也变成XXX,所以是只拷贝第一层列表,其实第二层列表在第一层列表中只是存了一个内存指针,虽然打印出来像是在一个列表里,所以copy是内存地址
如果要完全copy列表lists,而不会受到lists变动而变动,则需要深copy
import copy list3 = copy.deepcopy(lists)
列表循环
for i in lists:
print(i)
列表切片
print(lists[0:-1:2])
浅copy的三种方式
1 import copy 2 person=['name',['a',500]] 3 p1=copy.copy(person) 4 p2=person[:]#完全切片 5 p3=list(person)
元组tuple
只读列表,只能查,切片等,不能修改
购物车练习
1 # -*- coding:utf-8 -*- 2 # Author: Fan Chen 3 cart = [] 4 list = [ 5 ('Iphone', 5800), 6 ('Mac Pro', 10800), 7 ('Bike', 800), 8 ('Coffee', 30), 9 ] 10 11 salary = input("Please input your salary:") 12 if salary.isdigit(): 13 salary = int(salary) 14 while True: 15 for index, item in enumerate(list): 16 # print(list.index(item),item) 17 print(index, item) 18 number = input("Please select your goods to your cart:") 19 if number.isdigit(): 20 number = int(number) 21 if number < len(list) and number > -1: 22 p_list = list[number] 23 if p_list[1] <= salary: # 买得起 24 cart.append(p_list) 25 salary -= p_list[1] 26 print("Added \033[32;1m%s\033[0m into shopping cart, your balance is \033[31;1m%s\033[0m"%(p_list, salary)) 27 else: 28 print("\033[41;1myou balance is %s not enough\033[0m" % salary) 29 else: 30 print("you choose %s is not invalid", number) 31 elif number == 'q': 32 print("You are logging out...") 33 print("you have bought below:") 34 for p in cart: 35 print(p) 36 exit() 37 else: 38 print("You press a invalid option...")
浙公网安备 33010602011771号