1.字典

  字典的创建:

  dict1=dict((('name','PIG'),)),其中第一层()代表里面的内容是dict函数的输入参数。
第二层和第三层代表字典中的各元素,也就是key和value组合的列表,只不过这种列表不
是一种线性列表list,而是hash列表。在dict()和list()的函数调用中,里面用list标识符[]或者()

元组tuple效果一样。也可以像int()一样,将其看成强转换。
  dict2={'name':'PIG'}

  字典的修改:

  dict1={'name':'dog'}
dict1['age']=18
dict1.setdefault('name','cat') 
dict1.setdefault('age',34)
这两种效果一致  字典的查找:
dict2={'age': 23, 'name': 'pis','career': 'student'} print(dict2['name']) print(list(dict2.keys()))
print(list(dict2.values()))
print(list(dict2.items()))
 print出来的顺序与输入无关,而是根据hash算法自动调整。list()是一个强制类型转换。
 将keys/values/items类型转换为list类型。 dict3={'age': 23, 'name': 'pis','career': 'student'}
dict4={'birthday':'94-09-01'}
dict3.update(dic4)
print(dict3)
updata()将key值相同的替换,其他的添加。
key值只能为数值,tuple,字符串等不可变类型,不能为list和dict。 删除元素
 dict4.clear() # 清空字典
print(dict4)
del dict4['name'] #删除字典中指定键值对
print(dict4) print(dict4.pop('age')) #删除字典中指定键值对,并返回该键值对的值
ret=dict4.pop('age')
print(ret)
print(dict4)
pop操作可返回被pop的value值。
 a = dict4.popitem() #随机删除某组键值对,并以元组方式返回值
print(a, dict4) del dict4 #删除整个字典
print(dict4)
 其他操作以及涉及到的方法
 dict5=dict.fromkeys(['host1','host2','host3'],'test')
 dict6=dict.fromkeys(['host1','host2','host3'],['test1','tets2'])
 #print(dic6)

 #dic6['host2']='abc'
#print(dic6)
 这两个的区别是改变某一个key值时,第一个不影响其他的,第二个一起改变。因为字符串是不可变类型,list
是可变类型。
dict可嵌套dict。
sorted(dict6.items())可对无序的hash顺序按照key值排序。
对dict和list的for运算
for i in dic5:
print(i,dic5[i]) for i,v in dic5.items():
print(i,v) 2 string操作 a='dad'
b='mom'
c=a+b 加操作
d=a*5 乘操作
print('helloworld'[2:])切片操作
关键字 in
# print(123 in [23,45,123])
# print('e2l' in 'hello')输出True和False 格式化输出
print('%s is a good teacher'%'alex')
msg='''
----------info of %s----------
Name: %s
Age : %d
Job : %s
Salary: %f
You will be retired in %s years
----------end---------
''' % (name, name, age, job, salary, 50-age)
 

c=# print(c)连接join方法 
''.join([a,b,d])
#摘一些重要的字符串方法

#1 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类源码 3.list操作 list的切片操作
#a=['xiaohong', 'xiaoming', 'xiaoliang', 'xiaofang', 'xiaoli']
# print(a[2:-1])
# print(a[1:])
# print(a[1:-1])
# print(a[1:-1:1])
# print(a[1::2])
# print(a[3::-2])
# a.append('xiaoliu')
# print(a)
# a.insert(1,'xiaoxiong')
# print(a)
a[1] = 'haidilao'
# print(a)
# a[1:3] = ['da','ads']
# print(a)
# a.remove('xiaoming')
# print(a) # b = a.pop(1)
#
# print(a)
# print(b) # del(a[0])
# print(a)
# del(a)
# print(a)
# a.pop(1)
# print(a) 其他操作
#t = ['to', 'on', 'be', 'to', 'to', 'to'].count('to')

# print(t)
#
# a = [1, 2, 3]
# b = [4, 5, 6]
# a.extend(b)
# print(a)
# print(b)
# print(a.index(1))
# a.reverse()
# print(a) # x = [4, 6, 2, 1, 7, 9, ]
# x.sort()
# print(x)
#t = ['to', 'on', 'be', 'to', 'to', 'to']
# t.sort(reverse=True)
# print(t)
# print(t.count('dad'))
# print("haide"in t)
# b = t.copy()
# print(b) 主要关注三种重要的数据类型list tuple dictionary的常用操作

 

 
 
 

 
 
 




 
 

  

 

python中几种常用的数据类型的更多相关文章

  1. 二、python 中五种常用的数据类型

    一.字符串 单引号定义: str1 = 'hello' 双引号定义: str1 = "hello" 三引号定义:""" 人生苦短, 我用python! ...

  2. Java中几种常用数据类型之间转换的方法

    Java中几种常用的数据类型之间转换方法: 1. short-->int 转换 exp: short shortvar=0; int intvar=0; shortvar= (short) in ...

  3. Python中3种内建数据结构:列表、元组和字典

    Python中3种内建数据结构:列表.元组和字典 Python中有3种内建的数据结构:列表.元组和字典.参考简明Python教程 1. 列表 list是处理一组有序项目的数据结构,即你可以在一个列表中 ...

  4. Python之几种常用模块

    模块 注意事项: 所有的模块导入都应该尽量往上写 内置模块 扩展模块 自定义模块 模块不会重复被导入 : sys.moudles 从哪儿导入模块 : sys.path import import 模块 ...

  5. Python中的一些常用模块1

    OS模块,sys模块,time模块,random模块,序列化模块 os模块是与操作系统交互的一个接口 OS模块简单的来说是一个Python的系统编程操作模块,可以处理文件和目录这些我们日常手动需要做的 ...

  6. iOS中几种常用的数据存储方式

    自己稍微总结了一下下,方便大家查看 1.write直接写入文件的方法 永久保存在磁盘中,可以存储的对象有NSString.NSArray.NSDictionary.NSData.NSNumber,数据 ...

  7. C#中四种常用集合的运用(非常重要)

    C#中4个常用的集合 1.ArrayList ArrayList类似于数组,有人也称它为数组列表.ArrayList可以动态维护,而数组的容量是固定的. 它的索引会根据程序的扩展而重新进行分配和调整. ...

  8. java和python中的string和int数据类型的转换

    未经允许,禁止转载!!! 在平时写代码的时候经常会用到string和int数据类型的转换 由于java和python在string和int数据类型转换的时候是不一样的 下面总结了java和python ...

  9. Redis中3种特殊的数据类型(BitMap、Geo和HyperLogLog)

    前言 Reids 在 Web 应用的开发中使用非常广泛,几乎所有的后端技术都会有涉及到 Redis 的使用.Redis 种除了常见的字符串 String.字典 Hash.列表 List.集合 Set. ...

随机推荐

  1. spring冲刺计划

    会议召开时间表 日期 时间 内容 05/09 21:00-22:00 讨论题目(未果) 05/10 21:00-21:30 确定题目(网络助手) 05/13 21:00-21:45 讨论软件页面设计 ...

  2. Task 6.2冲刺会议六 /2015-5-19

    今天主要写的是登陆界面,用户状态,历史登录信息,默认用户等等.由于大部分时间都是把代码组合拳起来的过程,所以总会出现各种bug,有好大一部分不会修复.明天要继续这一部分还有熟悉一下聊天的主界面.

  3. mysql group by分组查询错误修改

    select @@global.sql_mode;set @@sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR ...

  4. js dom学习

    创建dom元素 var oLi = document.creteElement('li'); //创建livar aLi = oUl.getElementsByTagName('li');oLi.in ...

  5. windows多线程(九) PV原语分析同步问题

    一.PV原语介绍 PV原语通过操作信号量来处理进程间的同步与互斥的问题.其核心就是一段不可分割不可中断的程序. 信号量的概念1965年由著名的荷兰计算机科学家Dijkstra提出,其基本思路是用一种新 ...

  6. 一次DHCP故障排错

    关于DHCP授权,我一直遇到这样一个问题:服务器明明已经在授权列表中了,但是服务就是起不来,看日志会告诉你服务器未授权或者局域网内已有DHCP服务器,但是实际上却并不是这样.现在终于知道原因了,老旧D ...

  7. 第219天:Angular---过滤器

    在Angular中,过滤器的功能主要是格式化数据表达式,且可以自定义过滤器.作用域(scope)主要服务于页面模板,在控制器和页面中起桥梁作用,保存模板中的数据对象,为模板中的元素提供方法和属性. 一 ...

  8. [BZOJ3712]Fiolki 重构树(并查集)

    3712: [PA2014]Fiolki Time Limit: 30 Sec  Memory Limit: 128 MB Description 化学家吉丽想要配置一种神奇的药水来拯救世界.吉丽有n ...

  9. 【BZOJ4140】共点圆加强版(二进制分组)

    [BZOJ4140]共点圆加强版(二进制分组) 题面 BZOJ 题解 我卡精度卡了一天.... 之前不强制在线的做法是\(CDQ\)分治,维护一个凸壳就好了. 现在改成二进制分组,每次重建凸壳就好了. ...

  10. Luogu 3369 我用线段树骗了一道平衡树题……

    这篇博客毫无意义-- 只是表达一下我仍然会写树状数组和线段树-- 题目链接 #include <cstdio> #include <cstring> #include < ...