一、字符编码:
ASCII码最多只能表示 256个符号,每一个字符占8位
为什么一个字节占8位?因为计算机在读一串二进制数111011001111101110的时候,
要按照规定的长度截取,才能分清一段二进制数中一共有多少个字节。
一个二进制位是计算机最小标示单元。
一个字节是计算机最小储存单位。
8bits = 1Byte = 1字节 1024Byte = 1KB 1024KB = 1MB = 100万字节 = 100万字符
Unicoode
utf-32 = 4字节 utf-16 = 2字节 utf-8 = 1字节 可变长编码
32位机器:CPU一次可以读4个字节 364位机器:CPU一次可以读8个字节
注意:字符编码传送门
二、字符串
strip()可以脱掉字符串前后指定空格或符号
split()按指定符号或空格分割字符串组成列表
len() 测出字符串的长度
三、列表
count()统计列表中某个元素出现的次数 index("元素名")查元素的索引
append()追加到最后 insert(索引位置,"新元素名")在指定位置插入
pop(索引值)删除元素 remove("元素名")如有重复从左往右删第一个
del name[索引值] 指定删除 name[name.index("元素名")] = "新元素名"
四、for循环
作业一:跳出三层循环
loop1 = 0 loop2 = 0 loop3 = 0 while True: loop1+=1 print("loop1",loop1) break_flag1 = False while True: loop2+=1 print("loop2",loop2) break_flag2 = False while True: loop3+=1 print("loop3",loop3) if loop3==5: break_flag2 =True print("跳出子子循环") break if break_flag2: break_flag1 = True print("跳出子循环") break if break_flag1: print("跳出父循环") break
作业二:购物车初步程序(待修改)
shopping_cart = [] products = ["iphone","book","pen","liqueur"] price = [5800,30,5,500] break_flag = True wage = input("Please enter the salary:") for i in products: print(products.index(i)+1,i,price[products.index(i)]) while break_flag: while int(wage) >0: choice = input("请输入对应商品编号:") if choice=="q": break_flag = False break if price[int(choice) - 1] > int(wage): print("余额不足,还差:%d", price[int(choice) - 1] - int(wage)) else: shopping_cart.append(products[int(choice)-1]) Balance = int(wage) - price[int(choice)-1] print("您已购买%s,余额还有%s",str(shopping_cart),Balance) wage=Balance else: print("您已购买%s,余额还有%s", str(shopping_cart), Balance)