Python3.5--列表之深copy与浅copy、元组(下)
来源:互联网 发布:淘宝店铺氛围图是什么 编辑:程序博客网 时间:2024/06/05 03:35
1、关于直接赋值
2、关于浅复制copy
(1)实现浅copy的三种方式:
import copyperson = ["name",["a",100]]p1 = copy.copy(person)p2 = person[:]p3 = list(person)print(p1)print(p2)print(p3)#运行结果:#['name', ['a', 100]] #['name', ['a', 100]] #['name', ['a', 100]](2)浅copy的应用:用来创建联合账号(如:夫妻共同存款)
#!/usr/bin/env python# -*- coding:utf-8 -*-# Author:ZhengzhengLiuimport copyperson = ["name",["saving",100]]p1 = copy.copy(person)p2 = copy.copy(person)p1[0] = "Liu"p2[0] = "Mao"p1[1][1] = 50 //当第一个人使联合账户的存款发生修改时,第二个人也能看到print(p1)print(p2)#运行结果:#['Liu', ['saving', 50]]#['Mao', ['saving', 50]]
注:浅copy只复制列表的第一层元素。
3、关于深复制deep copy
4、元组(tuple)
其语法为:采用小括号
names = ("Liu","Zhang","Mao","Song")元组只有2个方法,count和index。
3、列表结合各种逻辑条件应用——Python3.6-购物车程序练习实例
#!/usr/bin/env python# -*- coding:utf-8 -*-# Author:ZhengzhengLiuProducts = [ ('Iphone',5800), ('Mac',12000), ('Bike',800), ('Water',10)]shopping_list=[]Salary = input("Your Salary:")if Salary.isdigit(): Salary = int(Salary) while True: for index,i in enumerate(Products): print(index,i) user_choice = input("Please input the products number:") if user_choice.isdigit(): user_choice = int(user_choice) if user_choice < len(Products) and user_choice >=0: if Products[user_choice][1] <= Salary: shopping_list.append(Products[user_choice]) Salary -= Products[user_choice][1] print("Added %s into shopping cart,your current balance is \033[31;1m%s\033[0m"%(Products[user_choice],Salary)) else: print("\033[41;1mYour balance is not enough!\033[0m" %Salary) else: print("Invalid input!") elif user_choice == 'q': print("------------Shopping List----------") for i in shopping_list: print(i) print("Your current balance is:",Salary) exit() else: print("invalid option!")'''输出结果为:Your Salary:345000 ('Iphone', 5800)1 ('Mac', 12000)2 ('Bike', 800)3 ('Water', 10)Please input the products number:1Added ('Mac', 12000) into shopping cart,your current balance is 225000 ('Iphone', 5800)1 ('Mac', 12000)2 ('Bike', 800)3 ('Water', 10)Please input the products number:2Added ('Bike', 800) into shopping cart,your current balance is 217000 ('Iphone', 5800)1 ('Mac', 12000)2 ('Bike', 800)3 ('Water', 10)Please input the products number:4Invalid input!0 ('Iphone', 5800)1 ('Mac', 12000)2 ('Bike', 800)3 ('Water', 10)Please input the products number:3Added ('Water', 10) into shopping cart,your current balance is 216900 ('Iphone', 5800)1 ('Mac', 12000)2 ('Bike', 800)3 ('Water', 10)Please input the products number:q------------Shopping List----------('Mac', 12000)('Bike', 800)('Water', 10)Your current balance is: 21690'''
阅读全文
0 0
- Python3.5--列表之深copy与浅copy、元组(下)
- iOS 深Copy与浅Copy
- 深copy,浅copy
- IOS开发之深拷贝与浅拷贝(mutableCopy与Copy)详解(shallow copy and deep copy)
- 列表中的Copy与DeepCopy
- 深copy 以及浅copy
- iOS 深copy 浅copy
- ios 深copy 浅copy
- 深copy和浅copy
- 深copy和浅copy
- python3学习--3列表与元组
- python3入门之列表和元组
- python3 数据类型之 列表、字典、元组
- 深拷贝与浅拷贝(Deep Copy and Shallow Copy)
- 深拷贝与浅拷贝(Deep Copy and Shallow Copy)
- iOS 浅拷贝(Shallow Copy)与深拷贝(Deep Copy)
- python深copy与浅copy的区别
- 浅复制(Shallow Copy)与深复制(Deep Copy)
- springAOP进行自定义注解,用于方法的处理
- 每天一个linux命令(37):date命令
- codility MaxDoubleSliceSum
- cvGet2D和cvGetReal2D
- 217. Contains Duplicate
- Python3.5--列表之深copy与浅copy、元组(下)
- Spring Cloud第二篇 创建一个Eureka Server
- angular2 markdown parser
- 无边框input
- centos服务器 禁止普通用户重启关机
- HTTP返回代码 201 304 404 500等代表的含义
- 机器学习——对三种模式的看法
- art-template的使用
- iOS Crash 捕获及堆栈符号化思路剖析