String的内置方法、字符号拼接、创建字典、制作购物车、元组
元组:(tuple)
元组被称为只读列表,即数据可以被查询,但不能被修改,所以,列表切片操作同样适用于元组。
元组写在小括号(())里元素之间用逗号隔开。
tuple得元素不可改变,但他可以包含可变得对象,比如list列表
构造包含0个或1个元素得元组比较特殊,所以有一些额外得语法规则:
tup1 = () //空元组
tup2 = (20,) //一个元素,需要在元素后添加逗号
tuple的作用:
对于一些数据我们不想被修改,可以使用元组;
元组的意义还在于,元组可以在映射(和集合的成员)中当作键使用–而列表则不行;元组作为很多内建函数和方法的返回值存在
制作购物车:
product_list=[
('Mac',9000),
('kindle',800),
('tesla',900000),
('python book',110),
('bike',2000),
]
saving=input('please input your money:')
shopping_car=[]
if saving.isdigit():
saving=int(saving)
while True: //打印商品内容for i,v in enumerate(product_list,1):print(i,'>>>',v)choice=input('选择购买商品编号[退出:q]:') //引导用户选择if choice.isdigit(): //验证输入是否合法choice=int(choice)if choice>0 and choice<=len(product_list):p_item=product_list[choice-1]if p_item[1]<saving: //如果钱够,用本金saving减去该商品价格,并将该商品加入购物车saving-=p_item[1]shopping_car.append(p_item)else:print('余额不足,还剩%s'%saving)print(p_item)else:print('编码不存在')elif choice=='q':print('--------您已经购买如下商品--------') //循环购物车里得商品,购物车存放得是已买商品for i in shopping_car:print(i)print('您还剩%s元钱'%saving)breakelse:print('退出')
字典(Dictionary)
字典是python中唯一得映射类型,采用键值对(key-value)得形式存储数据。python对key进行哈希函数运算,
根据计算得结果决定value得存储地址,所以字典是无序存储的,且key必须是可哈希的。
字典是除列表意外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。
两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取的。
不可变类型:整数,字符串,元组
可变类型: 列表,字典
字典两大特点:无序,键唯一
创建字典:dic={1:'alex','age':35,'hobby':{'girl_name':'小王','age':25},'is_handsome':True}print(dic['hobby'])dic={'name','alex'}dic2=dict((('name','alex'),))print(dic2查:dic1={'name':'alex'}dic1['name']=18print(dic1)#健存在,不改动,返回字典中相应的键对应的值ret=dic1.setdefault('age',34)print(ret)#键不存在,在字典中增加新的键值对,并返回相应的值dic1.setdefault('hobby','girl')print(dic1)#查 通过键去查找dic3={'age':18,'name':'alex','hobby':'girl'}print(dic3['name'])print(list(dic3.keys())) // 输出键print(list(dic3.values())) // 输出值print(list(dic3.items())) // 输出 键值对改:dic4={'age':18,'name':'alex','hobby':'girl'}# dic5={'1':'111','2':'222'}dic5={'1':'111','name':'222'} # 有同样的值就会更新覆盖值dic4.update(dic5)print(dic4)print(dic5)删:dic5 = {'name': 'liuze', 'age': 20, 'class': 1}dic5.clear() // 清空字典print(dic5)del dic5['name'] //删除字典中指定键值对print(dic5)print(dic5.pop('age')) // 删除字典中指定键值对,并返回该键值对的值ret=dic5.pop('age')print(ret)print(dic5)a = dic5.popitem() // 随机删除某组键值对,并以元组方式返回值print(a, dic5)del dic5 // 删除整个字典print(dic5)
其它他操作以及涉及到的方法:
dic6=dict.fromkeys(['host1','host2','host3'],'test')
print(dic6)#{'host3': 'test', 'host1': 'test', 'host2': 'test'}dic6['host2']='abc'
print(dic6)dic6=dict.fromkeys(['host1','host2','host3'],['test1','tets2'])
print(dic6)#{'host2': ['test1', 'tets2'], 'host3': ['test1', 'tets2'], 'host1': ['test1', 'tets2']}dic6['host2'][1]='test3'
print(dic6)#{‘host3’: [‘test1’, ‘test3’], ‘host2’: [‘test1’, ‘test3’], ‘host1’: [‘test1’, ‘test3’]}
字典查询与修改
av_catalog = {
"小小":{"www.youporn.com": ["费用低,世界资源广","质量一般"],"www.pornhub.com": ["费用低,世界资源较大","质量比yourporn高点"],"letmedothistoyou.com": [",高质量图片",],"x-art.com":["全部收费,穷逼请绕行"]
},
"大大":{"tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","听说是收费的"]
},
"你好":{"1024":["好人一生平安","服务器在国外,慢"]
}
}
av_catalog['小小']["www.youporn.com"][1]='高清'print(av_catalog)
sorted(dict):返回一个有序的包含字典所有key的列表:
dic={5:'555',2:'666',4:'444'}print(sorted(dic.items()))
dic5={'name': 'alex', 'age': 18}
字典编历:
for i in dic5: //推荐用,较便利
print(i,dic5[i])for i,v in dic5.items():
print(i,v)
string 操作
a="Let's go "
print(a)print('hello'*20) // * 重复输出字符串2 [] ,[:] // 通过索引获取字符串中字符,这里和列表的切片操作是相同的,具体内容见列表
print('helloworld'[2:])
关键字 in
print(123 in [23,45,123])
print('e2l' in 'hello')
4 % 格式字符串
print('alex is a good teacher')
print('%s is a good teacher'%'alex') //更加灵活一些
字符号拼接:
a='123'
b='abc'
d='44'
c=a+b
print(c)c=''.join([a,b,d])
print(c)
String的内置方法:
st=‘hello kitty {name} is {age}’
print(st.count(‘l’)) # 统计元素个数
print(st.capitalize()) # 首字母大写
print(st.center(50,’#’)) # 居中
print(st.endswith(‘tty3’)) # 判断是否以某个内容结尾
print(st.startswith(‘he’)) # 判断是否以某个内容开头
print(st.expandtabs(tabsize=20)) #设置空格,需要在字符串中添加 \t
print(st.find(‘t’)) # 查找到第一个元素,并将索引值返回 没找到返回-1
print(st.format(name=‘alex’,age=37)) # 格式化输出的另一种方式 待定:?:{}
print(st.format_map({‘name’:‘alex’,‘age’:22}))
print(st.index(‘t’)) # 会报错
print(‘asd’.isalnum()) # 包含数字和字符串
print(‘12632178’.isdecimal()) # 十进制数
print(‘1269999.uuuu’.isnumeric()) # 所有字符
print(‘abc’.isidentifier()) # 是否是一个非法字符
print(‘Abc’.islower()) # 小写
print(‘ABC’.isupper()) # 大写
print(’ e’.isspace()) # 是否是空格
print(‘My title’.istitle()) # 首字母大写
print(‘My tLtle’.lower())
print(‘My tLtle’.upper())
print(‘My tLtle’.swapcase())
print(‘My tLtle’.ljust(50,’’))
print(‘My tLtle’.rjust(50,’’))
print(’\tMy tLtle\n’.strip()) # 去掉特殊空格和换行
print(’\tMy tLtle\n’.lstrip())
print(’\tMy tLtle\n’.rstrip())
print(‘ok’)
print(‘My title title’.replace(‘itle’,‘lesson’,1)) # 替换
print(‘My title title’.rfind(‘t’))
print(‘My title title’.split(‘i’,1))
print(‘My title title’.title()) # 改为大写开头
重要的字符串方法:(牢记)
print(st.count(‘l’))
print(st.center(50,’#’)) # 居中
print(st.startswith(‘he’)) # 判断是否以某个内容开头
print(st.find(‘t’))
print(st.format(name=‘alex’,age=37)) # 格式化输出的另一种方式 待定:?:{}
print(‘My tLtle’.lower())
print(‘My tLtle’.upper())
print(’\tMy tLtle\n’.strip())
print(‘My title title’.replace(‘itle’,‘lesson’,1))
print(‘My title title’.split(‘i’,1))
String的内置方法、字符号拼接、创建字典、制作购物车、元组相关推荐
- 序列内置方法详解(string/list/tuple)
一.常用方法集合 1.1.string,字符串常用方法 以下举例是python2.7测试: 函数名称 作用 举例 str.capitalize() 字符串第一个字符如果是字母,则把字母替换为大写字母. ...
- 八、基本数据类型内置方法
一.数据类型 1.1定义 # 1.定义: # 1.1 整型int的定义 age=10 # 本质age = int(10)# 1.2 浮点型float的定义 salary=3000.3 # 本质sala ...
- Python的内置方法(二)
2019独角兽企业重金招聘Python工程师标准>>> open(name[,mode[,buffering]]):打开文件,返回一个file类型的对象.如果文件不能打开,抛出IOE ...
- 数字、字符串、列表类型及常用内置方法
目录 可变不可变类型 基本数据类型及内置方法 数字类型 整型 浮点型 数字类型总结 字符串类型 字符串类型的常用操作+内置方法 字符串类型总结 列表类型 列表类型的常用操作+内置方法 列表类型总结 可 ...
- 7.python字符串-内置方法分析
上篇对python中的字符串内置方法进行了列举和简单说明,但这些方法太多,逐一背下效率实在太低,下面我来对这些方法按照其功能进行总结: 1.字母大小写相关(中文无效) 1.1 S.upper() -& ...
- Python基础总结之常用内置方法总结
文章目录 前言 1.str 1.1.内置方法: 1.2.常用的内置方法 1.3.String模块的一些方法 2.list 2.1.内置方法 2.2.常用内置方法 3.tupple 3.1.内置方法 3 ...
- angular 判断字符串为空_总结:44个Python3字符串内置方法大全及示例
概述 Python中字符串是作为一种强大的处理工具集的存在,而不是类C中使用的那么难受.因为Python提供了一系列字符串操作的方法,从大小写转换.切片操作到查找等等应有尽有,几乎满足日常的使用场景, ...
- day10 基本数据类型及内置方法
基本数据类型及内置方法 一.引子 二.数字类型int与float 定义 类型转换 使用 三.字符串 定义 类型转换 使用 优先掌握的操作 需要掌握的操作 1.strip, lstrip, rstrip ...
- 字符串的常用内置方法
字符串的常用内置方法 capitalize() 将字符串的第一个字符转换为大写. lower() 转换字符串中所有大写字符为小写. upper() 转换字符串中的小写字母为大写. swapcase() ...
- Array的内置方法api
Array的内置方法api 判断数组与转换数组 Instanceof:是一个关键字用来判断A类型是否是B类型 返回值类型:boolean var arr1 = [1,2,3];var arr2 = n ...
最新文章
- 利用Nginx实现简易负载均衡
- 连接被远程计算机621,拨号上网常见错误代码提示及解决方法
- STM32 中JTAG 引脚作为普通IO口设置方法
- arcgis中python坡度计算_ArcGIS不同坡度植被覆盖率分析步骤
- mac 完全卸载vscode
- tomcat中配置jndi数据源以便spring获取
- 线性代数与MATLAB2
- .php对收录有影响吗,你知道吗?网站收录其实对网站排名影响并不大
- IE6下绝对定位层不显示
- Bootstrap 时间控件 datetimepicker
- java强制删文件夹_Java 删除文件夹 和 文件 集合
- IDEA中springboot项目启动慢
- 如此详细的尾灯模组方案,不看看吗?
- linux系统scsi硬盘,Linux系统中SCSI硬盘的热拔插
- python 清华教程_清华推出 1564集Java Python视频教程,别再说找不到适合的教程了...
- Pandas 日期处理:生成及去除工作日与节假日
- Dir-645任意文件读取漏洞
- 如何写好一份产品需求文档
- Scrapy爬虫入门教程五 Selectors(选择器)
- Linux ps 命令