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的深浅拷贝-成为马老师的弟子
参考链接 骏马金龙 前提 想要了解深浅拷贝之前必须要知道可变和不可变类型,和他们的特性 不可变类型 数字 字符串 元组 不可变集合 特性:改变值,会创建新的内存空间存储数据 可变类型 列表 字典 可变 ...
随机推荐
- 解决阿里云下server 2008中tomcat不能外网访问
1. 首先这台服务器是别人给到手的服务器, 所有环境跟我讲是全新的, 然后我开始配置tomcat; 开始安装sql 2008 r22. r1安装好之后, 本机内部怎么访问都行( . 和 127.0.0 ...
- mybatis 学习一 建立maven项目
一.直接建立Maven项目方法 1.建立Maven项目 接下来使用Eclipse的maven构建一个web项目,以构建SpringMVC项目为例: 1.1 选择建立Maven Project 选择Fi ...
- 分布式队列 Celery
详情参见: 分布式队列神器 Celery 用户指南(User Guide) 1) Celery-4.1 用户指南: Application(应用) 2) Celery-4.1 用户指南: Task(任 ...
- java成神之——date和calendar日期的用法
date和calendar日期的用法 util的data转换成sql的data 创建Date对象 格式化 Instant ChronoUnit LocalTime LocalDate LocalDat ...
- Python数据分析 EPD
参考用书 <利用Python进行技术分析:Python for Data Analysis> 官方把epd (https://www.enthought.com/products/cano ...
- .Net Core 迁移之坑二 《ToString("F") 输出与windows不一致问题》
大家都知道 ToString("F") 是干什么的 这里我还是介绍一下 格式字符串采用以下形式:Axx,其中 A 为格式说明符,指定格式化类型,xx 为精度说明符,控制格式化输出的 ...
- Cable master(二分-求可行解)
Inhabitants of the Wonderland have decided to hold a regional programming contest. The Judging Commi ...
- <转>Linux环境进程间通信--信号灯(四)
http://www.ibm.com/developerworks/cn/linux/l-ipc/part4/ 一.信号灯概述 信号灯与其他进程间通信方式不大相同,它主要提供对进程间共享资源访问控制机 ...
- Properties & Method
[Properties] 1.lazy property,通过@property来定义, lazy property的属性直到使用的时候才初始化: 2.Computed Properties: 2.对 ...
- Hadoop介绍及集群搭建
简介 Hadoop 是 Apache 旗下的一个用 java 语言实现开源软件框架,是一个开发和运行处理大规模数据的软件平台.允许使用简单的编程模型在大量计算机集群上对大型数据集进行分布式处理.它的核 ...