python列表数据运算_python之数据运算、字典、列表

常量定义规则:常量意义为不可做更改;常量定义名称为全大写;

如:MYSQL_CONNECTION= '192.168.1.1'

pyc:python生成的翻译文件,使计算机能够识别python语言;

列表的语法和使用:

列表参数插入语法:name.insert(2,'minggou')

name[1] = "wangminglong" --->修改列表中对应字段的内容;

追加:name.append("alex")

删除:name.remove("minggou")

定义列表:name=["1","minghu",2,43,"minggou"]

步长:print(name[::2])每隔一位取值一次;

查询列表:WHICH in name

if 9 in name:

num_of_ele = name.count(9)

position_of_ele = name.index(9)

name[position_of_ele] = 999

print("[%s] 9 is in name,postion:[%s]" % (num_of_ele,position_of_ele))

print(name)

for i in range(name.count(9)): #修改所有9

ele_index = name.index(9)

name[ele_index] = 9999999

print(name)

列表合并:

name.extend(name2)

列表反转:

name.reverse()

列表排序:

name.sort() #字符串和数字结合排序,python3会报错;单独排不会报错

输入下标删除元素,默认删除最后一个:

name.pop()

拷贝列表,只拷贝第一层,不拷贝第二层,第二层拷贝内存数据共享:

name.copy()

列表嵌套:

name = ["csd",12,"asvs",[2,3,56,7],"cdc",354]

查看列表长度:

print("name",len(name))

只读列表:

r = (1,2,3,4,5) #不想被改动的列表,只读列表,元组;

字符串常用操作:

name = "qiu ye"

username = input("name:")

if username.strip() == 'qiuye': #移除空格;

print("welcome")

字符串分割:

names = "dwqd,ascd,frer"

name2 = names.split(",")

print(name2) #变为列表

print("|".join(name2)) #按| 进行分割输出;

字符串索引:

name = "qiu ye"

print('' in name) #判断字符串中是否有空格

print(name.capitalize()) #首个字母大写

name.format() #字符串格式化

例:

msg = “hello,{name},it's the {age} last time..."

msg2 = msg.format(name='Minghu',age=333)

print(msg2)

msg2 = "hh{0},ddas{1}"

print(msg2.format("alex",33))

切片:同列表切片

name = "alex li"

print(name[2:4])

print(name.center(40,'-')) #40个字符居中打印,其他字节用-代替;

print(name.find()) #指定字段查找并输出;

判断:

age = int(input("your age:"))

if age.isdigit(): #判断是否为数字

age = int(age)

else:

print("invalid data type")

name.isalnum() #不能包含特殊字符

name.endswith() #判断结束

name.startswith() #判断开始

name.upper() #大写

name.lower() #小写

数据运算:

type("333") is str

type(a) is list

二进制表示:

256 128 64 32 16 8 4 2 1

0 0 0 0 0 0 0 0 0

1 1 1 1 1 1 1 1 1

计算机中能表示的最小单位,是一个二进制位;

计算机中能存储的最小单位,是一个二进制位(bit)

8bit = byte(字节)

1024byte = 1 kbyte

1204kbyte = 1mbyte

1024mb =1gb

运算符:

<<右移

>>左移

例:

64>>2 == 16

64<<1 == 128

python死循环:

例:

count = 0

while True:

print("this is true",count)

count +=1

字典:

id_db ={

1248357148965: { #key值必须是唯一的,不然只输出最后的一个;

'name' : "shanpao", #name:小字典的key,“shanpao”:key的value

'age' : "24"

'addr' : 'dongbei'

},

1248357448965: {

'name' : "shanpao",

'age' : "24"

'addr' : 'dongbei'

},

124835712345: {

'name' : "shanpao",

'age' : "24"

'addr' : 'dongbei'

},

}

#字典的基本格式,存储信息更灵活;

给key赋新值:

id_db[1248357448965]['name'] = "new value" #修改value;

id_db[1248357448965]['qq_of_wife'] = 123556675 #如果字典中没有此value,则添加新值;

print(id_db.setdefault(234254364),"hhh")) #取一个默认值,如果不存在,则赋一个新的值;

print(dict.fromkeys([1,2,34,5,6,8],'ddd') ) #将列表中每个值拿出来当做场景使用 --->一个坑!

id_db.popitem() #随机删除字典中的一个key --->建议不使用任何随机性的语言;

高效率的循环:

for key in id_db:

print(key,id_db[key])

例:购物车

salary = input("Input your salary:")

if salary.isdigit():

salary = int(salary)

else:

exit("Invaild data type...")

welcome_msg = "Welcome to our Shopping mall".center(50,'-')

print(welcome_msg)

exit_flag =False

product_list = [

('iphone',5888),

('mac air',8000),

('mac pro',9000),

('xiaomi',199),

('coffee',30),

('bike',800),

('cloth',200),]

shop_car = [] #定义购物车

while exit_flag is not True:

#for product_item in product_list:

# p_name,p_price = product_item

print("product list".center(50,'-'))

for item in enumerate(product_list):

index = item[0]

p_name = item[1][0]

p_price = item[1][1]

print(index,'.',p_name,p_price)

user_choice = input("[q=quit,c=check]what do you want to buy")

if user_choice.isdigit(): #肯定是选择商品

user_choice = int(user_choice)

if user_choice < len(product_list):

p_item = product_list[user_choice]

if p_item[1] <= salary: #工资够用

shop_car.append(p_item) #放入购物车

salary -= p_item[1] #减钱

print("Added \033[41;1m[%s]\033[0m into shop car,your current balance is \033[41;1m[%s]\033[0m" %(p_item,salary))

else:

print("your balance is \033[41;1m[%s]\033[0m,can not afford this goods..." % salary)

else:

if user_choice == 'q' or user_choice == 'quit':

print("purchased products as below".center(40,'-'))

for item in shop_car:

print(item)

print("END".center(40,'-'))

print("your balance is \033[41;1m[%s]\033[0m" % salary)

exit_flag = True

elif user_choice == 'c' or user_choice == 'check':

print("purchased products as below".center(40,'-'))

for item in shop_car:

print(item)

print("END".center(40,'-'))

print("your balance is \033[41;1m[%s]\033[0m" % salary)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中的字典(dict)是一种无序的键值对集合,可以通过键来快速访问对应的值。下面是几个字典的基本运算: 1. 创建字典 可以使用大括号{}或者dict()函数来创建一个空字典,也可以在大括号里面添加键值对来创建一个非空字典,例如: ``` # 创建空字典 empty_dict = {} empty_dict = dict() # 创建非空字典 person = {'name': 'Alice', 'age': 20, 'gender': 'female'} person = dict(name='Alice', age=20, gender='female') ``` 2. 访问字典元素 可以使用方括号[]来访问字典中的元素,例如: ``` # 访问元素 print(person['name']) # 输出 'Alice' print(person['age']) # 输出 20 ``` 如果访问的键不存在,会抛出KeyError异常。可以使用get()方法来避免这种情况: ``` # 使用get()方法访问元素 print(person.get('name')) # 输出 'Alice' print(person.get('height')) # 输出 None,因为'height'键不存在 print(person.get('height', 170)) # 输出 170,因为'height'键不存在,但是提供了默认值 ``` 3. 修改字典元素 可以使用方括号[]来修改字典中的元素,例如: ``` # 修改元素 person['age'] = 21 print(person) # 输出 {'name': 'Alice', 'age': 21, 'gender': 'female'} ``` 如果修改的键不存在,会创建一个新的键值对: ``` # 修改不存在的键 person['height'] = 170 print(person) # 输出 {'name': 'Alice', 'age': 21, 'gender': 'female', 'height': 170} ``` 4. 删除字典元素 可以使用del关键字来删除字典中的元素,例如: ``` # 删除元素 del person['gender'] print(person) # 输出 {'name': 'Alice', 'age': 21} ``` 5. 遍历字典 可以使用for循环遍历字典中的键值对,例如: ``` # 遍历字典 for key, value in person.items(): print(key, value) ``` 其中,items()方法返回一个包含所有键值对的元组列表,可以使用keys()方法和values()方法分别返回所有键和所有值。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值