day2学python 数据类型+深浅拷贝+循环
数据类型+深浅拷贝+循环
别的语言的数组 python不用定义 直接使用
color=['红','橙','黄','绿','青','蓝','紫']
print(color[1:3]) //打印【1,3)的数据 反向选择用-1 -2
color.append("白") //增
color.remove("紫")
color.pop(2) //删除
color.insert(1,"黑") //插入
print(color)
color.reverse() //全体反转
print(color)
str=["'#","","L","x","q",""]
str.sort() //按照ASCII码排序 先符号在字母在数字
print(str)
color.extend(str)
print(color,str)
=================================================================
深浅拷贝
import copy //导入copy包 color1=['红','橙','黄','绿','青',["h","u"],'蓝','紫']
color3=copy.deepcopy(color1) //深拷贝 全体拷贝一份
color2=color1.copy() //浅拷贝 拷贝第一层 深层不拷贝
for index,item in enumerate()的运用
produce=[("",3),("",2),("",3)]
for index,item in enumerate(produce): //数组自动排序 打印数组排序号与内容
print(index+1,item) //数组为[]
=================================================================
***********************此为自行编写的购物车程序**************************
count=int(input("your salary"))
item=[[1,"iphone",5800],[2,"Mac Pro",12000],[3,"Starbuck Latte",200] ,[4,"Alex Book",400],[5,"Bike",800]]
num=[0,0,0,0,0]
count1=count
while(count>200):
print("you can buy following items!")
if(count>item[0][2]):
print(item[0])
if (count > item[1][2]):
print(item[1])
if (count > item[2][2]):
print(item[2])
if (count > item[3][2]):
print(item[3])
if (count > item[4][2]):
print(item[4])
choice=int(input("please choose which one do you want to buy!"))
count-=item[choice-1][2]
num[choice-1]= num[choice-1]+1
print("check! add [",item[choice-1][1],"] to your bag!")
print("----your left salary",count)
if(count<200):
print("your money is not enough!")
break
n=input("continue?(press q to end)")
if(n=="q"or n=="Q"):
break
print("------your salary:",count1,"--------")
print("------following things in your bag!------")
for i in range(5):
if(num[i]>0):
print(num[i],"*",item[i][1])
print("------left money",count,"--------")
================================================================
******************string 的一些用法*****************
name="my name is cf"
#capitalize()---大写首字符
print(name.capitalize()) #center(int,fill)---前为长度总数 后为填充字符 str置于中心
print(name.center(50,"=")) #count(内容)---统计str中的(内容)个数
print(name.count("m")) #把字符串转化为二进制
print(name.encode()) #endswith(内容)---判断字符串以(内容)结尾 返回boolean型
print(name.endswith("cf")) #find(内容)---查找(内容)在str上的位置///可用来切片str
print(name.find("name"))
print(name[name.find("is"):]) # str.isalnum()是否只含阿拉伯数字或字母
print('ab23'.isalnum()) # str.isalpha()是否是纯字母
print('saSDA'.isalpha()) #'拼接内容'.join([数组]) 在数组每个元素中加上拼接内容
print('-'.join(['a','b','c'])) #首尾去空格和回车
print('\n name s \n'.strip()) # str.split(分隔符)将字符串按后面分隔符分割
print('1+2+3+4+5'.split("+"))
=============================================================
**********************字典示例****************
#字典是无序的!
# info={
'':'小明',
'':'小梁',
'':'小黑',
'':'小紫',
}
#增
info[""]='xiao黑2'
#删
#del info['201902']
info.pop("")
#改
info['']='xiaoming'
#查 2种方法
info.get('')#找不到返回null 优先使用
info[""] #找不到报错! print(info) #查找key是否在字典中 返回值boolean
print("" in info) #update升级字典 key相同覆盖后面 key找不到增加项目
b={
'':'WHAT',
'':'',
3:5
}
info.update(b)
print(info) #打印字典
for i in info:
print(i,info[i])
day2学python 数据类型+深浅拷贝+循环的更多相关文章
- Python原理 -- 深浅拷贝
python原理 -- 深浅拷贝 从数据类型说开去 str, num : 一次性创建, 不能被修改, 修改即是再创建. list,tuple,dict,set : 链表,当前元素记录, 下一个元素的位 ...
- Python的深浅拷贝
Python的深浅拷贝 深浅拷贝 1. 赋值,对于list, set, dict来说, 直接赋值. 其实是把内存地址交给变量并不是复制一份内容 list1 = [']] list2 = list1 p ...
- Python入门-深浅拷贝
首先我们在这里先补充一下基础数据类型的一些知识: 一.循环删除 1.前面我们学了列表,字典和集合的一些操作方法:增删改查,现在我们来看一下这个问题: 有这样一个列表: lst = ['周杰伦','周润 ...
- python的深浅拷贝以及fromkeys的用法
1.join()的用法:使用前面的字符串.对后面的列表进行拼接,拼接结果是一个字符串 # lst = ["alex","dsb",'wusir','xsb'] ...
- 24、简述Python的深浅拷贝以及应用场景
深浅拷贝的原理 深浅拷贝用法来自copy模块. 导入模块:import copy 浅拷贝:copy.copy 深拷贝:copy.deepcopy 字面理解:浅拷贝指仅仅拷贝数据集合的第一层数据,深拷贝 ...
- 简述Python的深浅拷贝以及应用场景
深浅拷贝的原理 深浅拷贝用法来自copy模块. 导入模块:import copy 浅拷贝:copy.copy 深拷贝:copy.deepcopy 字面理解:浅拷贝指仅仅拷贝数据集合的第一层数据,深拷贝 ...
- python 赋值 深浅拷贝
深浅拷贝 一.数字和字符串 对于 数字 和 字符串 而言,赋值.浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 impor ...
- python 的深浅拷贝问题
深浅拷贝概念 基本类型和引用类型数据拷贝的问题.因为基本类型的数据大小是固定的,所以他保存在栈内存中:而引用类型的数据大小不固定,因而保存在堆内存中,单引用类型在栈内存中只保存一个指向堆内存的指针. ...
- python的深浅拷贝-成为马老师的弟子
参考链接 骏马金龙 前提 想要了解深浅拷贝之前必须要知道可变和不可变类型,和他们的特性 不可变类型 数字 字符串 元组 不可变集合 特性:改变值,会创建新的内存空间存储数据 可变类型 列表 字典 可变 ...
随机推荐
- C#三层架构详细解剖
深入浅出C#三层架构(转) 本文用一个示例来介绍如何建设一个三层架构的项目,并说明项目中各个文件所处的层次与作用.写本文的目的,不是为了说明自己的这个方法有多对,而是希望给那些初学三层架构却不知从何入 ...
- java成神之——数值操作BigDecimal,BigInteger,Random,SecureRandom
数值操作 数值新特性 包装类 浮点 BigDecimal BigInteger 数值本地化 随机数 假随机数 真随机数 播种 结语 数值操作 数值新特性 123_456 等价于 123456,增加可读 ...
- 匿名类型与Select方法实现自定义对象插入局部表结构中
在提取局部表结构数据时,通过Select选取需要的字段,如下句,此时其实产生了一个不用于_menuMan的原新数据类型new { c.SYS_COMMANDS_ID,c.TXT_COMMANDTITL ...
- classmethod VS staticmethod
- JS播放声音 兼容所有浏览器
JS播放声音 兼容所有浏览器 <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http ...
- leetcode896
class Solution { public: bool isMonotonic(vector<int>& A) { ) { return true; } bool GetDif ...
- html收藏
全屏显示<input type="button" name="fullscreen" value="全屏显示" onclick=&qu ...
- 分布式文件系统MFS(moosefs)实现存储共享
分布式文件系统MFS(moosefs)实现存储共享(第二版) 作者:田逸(sery@163.com) 由于用户数量的不断攀升,我对访问量大的应用实现了可扩展.高可靠的集群部署(即lvs+keepali ...
- linux top 命令各参数详解
简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按 ...
- SpringBoot18 Swagger、API接口文档生成、WireMock、模拟后台数据
1 Swagger 1.1 简述 前后端分离的项目需要前后端开发人员协同工作,后台开发人员需要给到前端开发者一套API文档:利用Swagger可以简单高效的帮助后台开发者生成RestfulAPI开发文 ...