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码值的不 ...
随机推荐
- hive表多种存储格式的文件大小差异,无重复数据
-- 重点,目标表无重复数据 -- dbName.num_result 无重复记录 -- 插入数据 CREATE TABLE dbName.test_textfile( `key` string, ` ...
- python练习六十二:文件处理,往文件中所有添加指定的前缀
往文件中所有添加指定的前缀 方法一:open方法 f_r = open('text.txt') f_w = open('text_new.txt','w+') i = 0 while True: i ...
- [转]JS判断访问设备、客户端操作系统类型
本文转自:http://www.cnblogs.com/duanguyuan/p/3534470.html 先给出一个实例:判断windows.linux.android 复制以下代码另存为html文 ...
- OpenStack Weekly Rank 2015.08.24
Module Reviews Drafted Blueprints Completed Blueprints Filed Bugs Resolved Bugs Cinder 5 1 1 6 13 Sw ...
- (转)总结Linux的chattr与lsattr命令详解
PS:有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了.chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的li ...
- zookeeper开源客户端curator
zookeeper的原生api相对来说比较繁琐,比如:对节点添加监听事件,当监听触发后,我们需要再次手动添加监听,否则监听只生效一次:再比如,断线重连也需要我们手动代码来判断处理等等.对于curato ...
- a :hover 和a:hover 区别
article a :hover { color: red;} 上面表示 article 内所有a 标签的所有子标签在hover时是红色 article a:hover { color: red; ...
- PHP算法——生成唯一字符串
经常遇到忘记密码的情况,点击一下忘记密码,然后收到更改密码的链接,连接中往往都会有一段很长而且很乱的字符串.试想一下,如果出现了重复的字符串,那岂不是把别人的密码给重置了? 所以产生唯一数对于网站的安 ...
- Spring boot-(3) Spring Boot特性1
本节将深入Spring Boot的细节,可以学到你想使用的或定制的Spring Boot的主要特性. 1. SpringApplication SpringApplication类为引导一个Sprin ...
- WebGL 踩坑系列-2
需求:绘制斑点在球面上走过的路径 思路:要绘制斑点在球面上走过的路径,首先要记录上一时刻和当前时刻该斑点所在球面的位置,并且实时更新当前时刻的斑点位置和上一时刻的斑点位置. 为了方便,上一时刻斑点所在 ...