import 先找当前目录下的包,如果没有找到就去找系统配置下的包。注意:文件名称不要为系统包的名称
import 导入系统配置文件,import 导入外包,先要使用pip3 install 命令下载包
int1 = 1
print(type(int1))
string(字符串类型)
name = 'zf'
print(type(name))
字符串的操作
name = " my name is bob"
# 首字母大写
print(name.capitalize())
# 元素出现的次数
print(name.count('b'))
# 返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格。
print(name.center(50,'-'))
# 将字符串转化为类型
print(name.encode())
# 判断是否以该元素结尾,输出结果为True or False
print(name.endswith('bob'))
# 把字符串 string 中的 tab 符号转为空格,tab 符号默认的空格数是 8 。
print(name.expandtabs(4))
# 检测 str 是否包含在字符串中,如果指定范围 beg 和 end ,beg默认为0,end默认为字符长度,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则返回-1
print(len(name))
print(name.find('bob',1,14))
# 如果字符串只包含数字则返回 True 否则返回 False..
print(name.isdigit())
# 返回第一个匹配到的索引下标
print(name.index('a'))
# 如果字符串中只包含数字字符,则返回 True,否则返回 False
print(name.isnumeric())
# 返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格。
print(name.ljust(20,'-'))
# 转换字符串中所有大写字符为小写.
print(name.lower())
# 截掉字符串左边的空格或指定字符
print(name.lstrip())
# 把 将字符串中的 str1 替换成 str2,如果 max 指定,则替换不超过 max 次
print(name.replace('bob','andy'))
print(name.rfind('bo'))
# 删除字符串字符串末尾的空格
print(name.rstrip())
# num=string.count(str)) 以 str 为分隔符截取字符串,如果 num 有指定值,则仅截取 num+1 个子字符串
print('1+2+3+4'.split('+'))
# 将字符串中大写转换为小写,小写转换为大写
print(name.swapcase())
# 转换字符串中的小写字母为大写
print(name.upper())
布尔(bool类型)
print(type(False))
列表(list类型)
import copy
# 列表指针从0开始
list1 = ['zf','ybh','lyz','xl','zf']
# 列表长度
print(len(list1))
# 查看列表元素
print(list1[0])
print(list1[3])
# 截取从指针1开始,以指针3结束,但是不包含指针3
print(list1[1:3])
# 截取从指针1开始直到结束
print(list1[1:])
# -1为最后一个元素
print(list1[-2:])
# 按步长来进行切片
print(list1[0:2:2])
# 修改对象
list1[0] = 'yjl'
print(list1)
# 删除指定索引的对象
del(list1[0])
print(list1)
# 找出某个值第一个匹配项的索引位置
print(list1.index("zf"))
# 统计某个元素在列表中出现的次数
print(list1.count('zf'))
# 移除列表中某个值的第一个匹配项
list1.remove('zf')
print(list1)
# 在列表末尾添加新的对象
list1.append('ztw')
print(list1)
# 复制列表(浅copy)
list2 = list1.copy()
print(list2)
# copy多层时,只是复制了内存地址,当多层发生修改时,copy多层的结果也发生改变
list1.insert(3,['bob','alex'])
list2 = list1.copy()
list1[3][0] = 'BOB'
print(list1)
print(list2)
del(list1[3])
# 深copy
list1.insert(3,['bob','alex'])
list2 = copy.deepcopy(list1)
list1[3][0] = 'BOB'
print(list1)
print(list2)
del(list1[3])
# 清除列表
list2.clear()
print(list2)
# 将对象插入列表指定索引位置
list1.insert(3,'guoguo')
print(list1)
# 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
list1.pop(2)
print(list1)
# 反向列表中元素
list1.reverse()
print(list1)
# 对原列表进行排序
list1.sort()
print(list1)
元祖(tuple)tuple1 = ('bob','alex','andy')
print(tuple1.index('bob'))
print(tuple1.count('bob'))
购物车案例
product_list = [
('phone',3000),
('mac_computer',9000),
('python book',99),
('air',3000),
]
shopping_list = []
salary = input("input your salary:")
if salary.isdigit():
salary = int(salary)
while True:
# 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列
for index,item in enumerate(product_list):
print(index,item)
user_choice = input("选择要买嘛?>>>:")
if user_choice.isdigit():
user_choice = int(user_choice)
if user_choice = 0:
p_item = product_list[user_choice]
if p_item[1] <= salary: # 买的起
shopping_list.append(p_item)
salary -= p_item[1]
print(
"Added %s into shopping cart,your current balance is \033[31;1m%s\033[0m" % (
p_item, salary))
else:
print("\033[41;1m你的余额只剩[%s]啦,还买个毛线\033[0m" % salary)
else:
print("product code [%s] is not exist!" % user_choice)
elif user_choice == 'q':
print("--------shopping list------")
for p in shopping_list:
print(p)
print("Your current balance:", salary)
exit()
else:
print("invalid option")
显示颜色的格式
字典的三大特性:
一、不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住;
二、键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行
三、无序
students = {
'student1':'Bob',
'student2':'Alex',
'student3':'Andy',
'student1':'BoB',
'student5':'lyz'
}
# 无序,天生去重,后面的覆盖前面的
print(students)
# 遍历
# for i in students:
# print(i,students[i])
for k,v in students.items():
print(k,v)
# 返回所有的key
print(students.keys())
if 'student1' in students:
print(True)
# 查看
print(students['student1'])
# 推荐使用,上面当键不存在时会报错
print(students.get('student1'))
# 修改
students['student1'] = 'xzmly'
print(students['student1'])
# 当键不存在时添加一条
students['student4'] = 'xdd'
print(students)
# 删除之del
del(students['student4'])
print(students)
# 删除之pop
print(students.pop('student1'))
print(students)
# 存在students则取students的值,不存在就取默认值
students.setdefault('student5','byb')
print(students['student5'])
# 将列表转化为列表
print(students.items())
集合 list_1 = [1,4,5,7,3,6,7,9]
list_1 = set(list_1)
list_2 = set([2,6,0,66,22,8,4])
print(list_1,list_2)
# 交集
print(list_1.intersection(list_2))
# 并集
print(list_1.union(list_2))
# 差集
print(list_1.difference(list_2))
# 子集 父集
list_3 = set([1,3,7])
print(list_3.issubset(list_1))
print(list_1.issuperset(list_3))
# 对称差集(合集 - 交集)
print(list_1.symmetric_difference(list_2))
# 添加
list_1.add(555)
print(list_1)
# 可以添加多个
list_1.update([666,777])
print(list_1)
# 不存在会报错
list_1.remove(1)
print(list_1)
# 不存在不会报错
list_1.discard(7)
print(list_1)
string类型与type类型转换
msg = '我爱你,北京'
print(msg)
# string转换为byte时,结果会带b
msg1 = msg.encode("utf-8")
print(msg1)
print(msg1.decode("utf-8"))