python 造轮子(一)——序列与字典
虽然说造轮子很少用了,什么底层东西很少写,但是还是很想学扎实,还是好多东西还是的会,没有底层的支持,比较高级的库学起来还是很困难的。
- 序列的普遍用法:
#-*-coding:utf8-*- #索引
l = [1,2,3,4]
t = (1,2,3,4)
d = {1:1,2:2,3:3,4:4} print l[0]
print t[0]
print d[1] #键索引 #切片 print l[0:5]
print t[0:5] #加
print l + [5]
print t + (5,) #乘
print l*2
print t*2 #in
if 1 in l:
print 'yes'
if 1 in t:
print 'yes'
if 1 in d:
print 'yes' #len
print len(l)
print len(t)
print len(d) #min(seq) max sum
print min(l)
print max(t)
print sum(l)
- 列表的用法:
#-*-coding:utf8-*- #列表的使用 #列表的创建
a = ['a','b','c'] #列表的访问
print a[0] #修改
a[0] = 1
print a #增加元素 '''
使用+ 在列表后面加一个列表
''' a = a + ['d'] print a '''
使用append()在列表尾部假如一个元素
''' a.append('e')
print a '''
使用extend()在一个列表后面加一个列表
''' a.extend(['f'])
print a '''
使用insert(id,x)在id位置加一个元素x''' a.insert(0,3)
print a #检索元素
'''
使用count(x)检查列表中x元素出现的次数
'''
print a.count(1)
print a.count(2) '''
使用in是否在列表里面
''' if 3 in a:
print 'yes' #删除元素
'''
使用pop(id)弹出指定位置的元素,没有参数默认弹出最后一个
'''
print a.pop()
print a print a.pop(0)
print a '''
使用del list[id]删除指定位置的元素
'''
del a[0]
print a '''
使用remove(x)删除某个特定值的元素(只会删掉一个)
''' a.append('e')
print a a.remove('e')
print a a.remove('e')
print a #index(x)返回x的下标
print a.index('b') #reverse()反转列表
a.reverse()
print a #sort()排序列表
a.sort()
print a
- 元组的用法:
#-*-coding:utf8-*- #元组操作 #创建
tup = ('a','b',2017) #访问元组
print tup[0]
print tup[:3] #元组不能增加,没有append,extend函数,但可以用+ 连接
tuptmp = (2,23)
tup = tup + tuptmp
print tup #del 删除整个元组
#del tup
#print tup #len 长度
print len(tup) print tup*4 if 'a' in tup:
print 'yes'
- 字典的用法:
#-*-coding:utf8-*- #字典操作
d = {"tree":18,"id":2015,"dress":"happy"} print d["tree"] #keys()返回所有键
print d.keys() #values()返回所有值
print d.values() #has_kay()是否有某一键
print d.has_key("tree") #get(x) 根据键x,返回对应的值,不存在返回None
print d.get("tree") #items() 返回一个由(key,value)组成的元组
print d.items() #字典元素的删除
'''
del删除键对应的元素
''' del d["tree"]
print d '''
pop(key)删除key对应的元素
''' d.pop("id")
print d '''
clear()删除全部元素
'''
d.clear()
print d #update方法 d1.update(d2),用d2去合并d1,覆盖掉d1中间的重复元素
d2 = {"wo":"you"}
d.update(d2)
print d #in 键是否在字典里
print "wo" in d
- 字符串的用法:
#-*-coding:utf8-*- #字符串操作 s = "Python" #index('x') 返回x的下标
print s.index('P') #find('x') 返回x的下标,找不到返回-1
print s.find('s') #replace(x,y) 把x换成y(全部替换掉)
print s.replace('P','a') s = "PPython"
print s.replace('P','A') #split('x')分割字符串,无参数以空格分割 s = "I study Python"
print s.split()
- 列表,元组,字符串转换:
#-*-coding:utf8-*- #list()字符串转为列表 strs = "strings"
print list(strs) #tuple()字符串转成元组 print tuple(strs) #列表、元组转成字符串,用join方法 s = ['h','a','p','p','y',str(1)] print "".join(list(s)) s = ('h','a','p','p','y',str(1))
print "".join(tuple(s))
python 造轮子(一)——序列与字典的更多相关文章
- 使用原生 python 造轮子搭建博客
这篇用来 记录一个 从零开始的 博客搭建,希望坚持下去,因为python 开发效率令人发指,所以会原生从零写 ORM ,Web 框架 前提是打好 异步 io 的基础, 使用异步,有一点要谨记,一旦开始 ...
- python序列,字典备忘
初识python备忘: 序列:列表,字符串,元组len(d),d[id],del d[id],data in d函数:cmp(x,y),len(seq),list(seq)根据字符串创建列表,max( ...
- Python第三天 序列 数据类型 数值 字符串 列表 元组 字典
Python第三天 序列 数据类型 数值 字符串 列表 元组 字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...
- Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式
Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell ...
- Meteva——让预报检验不再重复造轮子
更多精彩,请点击上方蓝字关注我们! 检验是什么?****预报准确率的客观表达 说到天气预报,你最先会想到什么? 早上听了预报,带了一天伞却没下一滴雨的调侃? 还是 "蓝天白云晴空万里突然暴风 ...
- Python数据类型之“文本序列(Text Sequence)”
Python中的文本序列类型 Python中的文本数据由str对象或字符串进行处理. 1.字符串 字符串是Unicode码值的不可变序列.字符串字面量有多种形式: 单引号:'允许嵌入"双&q ...
- 翻译《Writing Idiomatic Python》(四):字典、集合、元组
原书参考:http://www.jeffknupp.com/blog/2012/10/04/writing-idiomatic-python/ 上一篇:翻译<Writing Idiomatic ...
- 重复造轮子感悟 – XLinq性能提升心得
曾经的两座大山 1.EF 刚接触linq那段时间,感觉这家伙好神奇,语法好优美,好厉害.后来经历了EF一些不如意的地方,就想去弥补,既然想弥补,就必须去了解原理.最开始甚至很长一段时间都搞不懂IQue ...
- 【转】Python数据类型之“文本序列(Text Sequence)”
[转]Python数据类型之“文本序列(Text Sequence)” Python中的文本序列类型 Python中的文本数据由str对象或字符串进行处理. 1.字符串 字符串是Unicode码值的不 ...
随机推荐
- vue2.0组件的生命周期
beforeCreate(){ console.log(new Date().getTime()) let data = this.text; console.log('组件创立之前') consol ...
- shiro【filter】
alt+7 OncePerRequestFilter public final void doFilter(ServletRequest request, ServletResponse respon ...
- web常见测试点总结
上周五小组内对Web的常见测试点进行了交流学习,虽然这些信息网上一搜都一大把,但整理的过程中自己脑袋瓜里又重新回顾了一遍,大家都很认真的在学习,互相补充着,现总结如下,欢迎同行留言 一.新增.修改 用 ...
- Matrix Chain Multiplication (堆栈)
题目链接:https://vjudge.net/problem/UVA-442 题目大意:输入n个矩阵的维度和一些矩阵链乘表达式,输出乘法的次数.如果乘法无法进行,输出error. 假定A是m*n的矩 ...
- HDU - 6208 The Dominator of Strings HDU - 6208 AC自动机 || 后缀自动机
https://vjudge.net/problem/HDU-6208 首先可以知道最长那个串肯定是答案 然后,相当于用n - 1个模式串去匹配这个主串,看看有多少个能匹配. 普通kmp的话,每次都要 ...
- 性能测试工具LoadRunner30-LR之监控Tomcat
步骤: 1.通过LR去访问tomcat监控页(安装tomcat的过程可以百度一下) 2.然后通过关联取监控数据 3.通过lr_user_data_point()添加数据到图表中去 double ato ...
- jenkins对测试脚本的构建步骤
使用Jenkins定时执行脚本 Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,所以可用于定时执行python脚本. 环境准备:jdk1.7及以上+Jenkins[+tom ...
- Unicode汉字编码表以及参考源码分享
1 Unicode编码表 Unicode只有一个字符集,中.日.韩的三种文字占用了Unicode中0x3000到0x9FFF的部分 Unicode目前普遍采用的是UCS-2,它用两个字节来编码一个 ...
- vue中添加echarts
方法一:全局引入echarts 步骤: 1.全局安装 echarts依赖. cnpm install echarts -- save 2.引入echarts模块,在Vue项目的main. ...
- html和Url转码与解码
JS (JQuery)对Html.URL的编码与解码 首先引入JQuery文件 1.js对Html编码 function htmlEncode(value){ return $('<div/&g ...