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的深浅拷贝-成为马老师的弟子
参考链接 骏马金龙 前提 想要了解深浅拷贝之前必须要知道可变和不可变类型,和他们的特性 不可变类型 数字 字符串 元组 不可变集合 特性:改变值,会创建新的内存空间存储数据 可变类型 列表 字典 可变 ...
随机推荐
- winform为本地化资源添加tag属性
示例: /// <summary> /// 查找 System.Drawing.Bitmap 类型的本地化资源. /// </summary> internal static ...
- Android UI学习 - ListView (android.R.layout.simple_list_item_1是个什么东西)
Android UI学习 - ListView -- :: 标签:Android UI 移动开发 ListView ListActivity 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始 ...
- LibEvent代码阅读--多缓冲区和零拷贝技术
http://blog.chinaunix.net/uid-20937170-id-4827550.html
- VS 配置外部DLL的引用路径【可执行文件的环境路径】
右键项目,属性->配置属性->调试->环境,在这里写入可执行文件运行时的环境路径,格式为:PATH=ABC,如PATH=$(SolutionDir)/env 这样,我们就可以把运行时 ...
- mysql之提示符
MySQL常用的简单的命令: mysql> PROMPT \u@\h \d> PROMPT set to '\u@\h \d>' root (none)>USE test Da ...
- 1 任务管理 --转载于电子工程世界
uC/OS-II 中最多可以支持64 个任务,分别对应优先级0-63,其中0 为最高优先级.63为最低级,系统保留了4个最高优先级的任务和4个最低优先级的任务,所有用户可以使用的任务数有56个. uC ...
- Redis搭建(二):主从复制
一.引言 Redis有三种集群模式: 第一个就是主从模式 第二种“哨兵”模式,在Redis 2.6版本开始提供,2.8版本稳定 第三种是Cluster集群模式,在Redis 3.x以后的版本才增加进来 ...
- 求输出和为n的所有连续自然数序列
这是编程之美中的一道题.编程之美中的题目是这样的: 1+2=3 4+5=9 2+3+4=9 等式的左边都是两个或者两个以上的连续自然数相加,那么是不是所有的整数都可以写成这样的形式? 问题1:写个程序 ...
- java基础面试题 背过1
web.xml文件中可以配置哪些内容? 答:web.xml用于配置Web应用的相关信息,如:监听器(listener) ContextLoaderListener .过滤器(filter) Strut ...
- Linux 编译内核
编译内核步骤: 1.先查看自己OS使用的内核版本 mrzhang@mrzhang:~$ uname -r4.4.0-51-genericmrzhang@mrzhang:~$ 2.如果安装系统时,自动安 ...