目录:

1.1 列表和元组返回顶部

1、列表基本操作

1. 列表赋值 

a = [1,2,3,4,5,6,7,8]
a[0] = 100 #the result : [100, 2, 3, 4, 5, 6, 7, 8]

2. 元素删除

a = [1,2,3,4,5,6,7,8]
del a[0]   #the result : [2, 3, 4, 5, 6, 7, 8]

3. 分片赋值

a = [1,2,3,4,5,6,7,8]
a[::2] # [1, 3, 5, 7]
a[-2:] # [7, 8]
a[1:1] = [0,0,0] # the result : [1, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8]

4. 使用 for i in range(10,-1,-1) 生成列表

for i in range(10,-1,-1): # 开始位置(10),结束位置(-1), 步长(-1)
print i,
# 打印结果:10 9 8 7 6 5 4 3 2 1 0
# 从10开始,每次向后取一个值,直到遇到结束位置 -1

2、列表方法

1. append

   作用:append用于在列表末尾追加新的对象

a = [1,2,3]
a.append(4)        #the result : [1, 2, 3, 4]

2. count

  作用:count方法统计某个元素在列表中出现的次数

a = ['aa','bb','cc','aa','aa']
print(a.count('aa')) #the result : 3

3. extend

  作用:extend方法可以在列表的末尾一次性追加另一个序列中的多个值

a = [1,2,3]
b = [4,5,6]
a.extend(b) #the result :[1, 2, 3, 4, 5, 6]

4. index

  作用:index函数用于从列表中找出某个值第一个匹配项的索引位置

a = [1,2,3,1]
print(a.index(1)) #the result : 0

5. insert

  作用: insert方法用于将对象插入到列表中

a = [1,2,3]
a.insert(0,'aa') #the result : ['aa', 1, 2, 3]

6. pop

  作用:pop方法会移除列表中的一个元素(默认是最后一个),并且返回该元素的值

a = [1,2,3]
a.pop() #the result : [1, 2]
a.pop(0)

7. remove

  作用:remove方法用于移除列表中某个值的第一个匹配项

a = ['aa','bb','cc','aa']
a.remove('aa') #the result : ['bb', 'cc', 'aa']

8. reverse

  作用:reverse方法将列表中的元素反向存放

a = ['a','b','c']
a.reverse() #the result : ['c', 'b', 'a']

9. sort

  作用:sort方法用于在原位置对列表进行排序,意味着改变原来的列表,让其中的元素按一定顺序排列

a = ['a','b','c',1,2,3]
a.sort() #the result :[1, 2, 3, 'a', 'b', 'c']

10.  enumrate

li = [11,22,33]
for k,v in enumerate(li, 1):
print(k,v)

11. range和xrange        指定范围,生成指定的数字

  注:python3中的range类似python2中的xrange,比如a = range(1,4) : a返回的不是列表对象而是一个可迭代对象(<class 'range'>)

#1、range根据start与stop指定的范围以及step设定的步长,生成一个序列:range([start,] stop[, step])
#2、xrange 用法与 range 完全相同,所不同的是生成的不是一个list对象,而是一个生成器
for i in range(1,10,2):
print(i)

12. 列表去空

法1:
filter(None, your_list) 法2:
while '' in your_list:
your_list.remove('') 法3:
your_list = [x for x in your_list if x != '']

3、元组

  元组定义:元组和列表一样,也是一种序列,唯一的不同是元组不能修改。

1. 创建元组举例

#1. 创建元组
a = (1,2,3,4,5,6)
#2. 将列表转换成元组
tuple([1,2,3,4]) #the result : (1, 2, 3, 4)

4、列表和元组常用函数

  com(x,y)                                                                                                  比较两个值

  len(seq)                                                                                                    返回序列的长度

  list(seq)                                                                                                    把序列转换成列表

  max(args)                                                                                                         返回序列或者参数集合中得最大值

  min(args)                                                                                                 返回序列或者参数集合中的最小值

  reversed(seq)                                                                                         对序列进行反向迭代

  sorted(seq)                                                                                             返回已经排列的包含seq 所有元素的列表

  tuple(seq)                                                                                                把序列转换成元组

1.2 字符串返回顶部

1、字符串格式化

1. 使用百分号(%)字符串格式化

num = 100
print("%d to hex is %x" %(num, num)) #100 to hex is 64
print("%d to hex is %#x" %(num, num)) #100 to hex is 0x64

2. 使用format字符串格式化

#1. 位置参数
print("{0} is {1} years old".format("tom", 28)) #tom is 28 years old
print("{} is {} years old".format("tom", 28)) #tom is 28 years old
print("Hi, {0}! {0} is {1} years old".format("tom", 28)) #Hi, tom! tom is 28 years old #2. 关键字参数
print("{name} is {age} years old".format(name = "tom", age = 28)) #tom is 28 years old #3. 下标参数
li = ["tom", 28]
print("{0[0]} is {0[1]} years old".format(li)) #tom is 28 years old

 2、字符串方法

1. find方法

  作用:find方法可以在一个较长的字符串中查找子串,他返回子串所在位置的最左端索引,如果没有找到则返回-1

a = 'abcdefghijk'
print(a.find('abc')) #the result : 0
print(a.find('abc',10,100)) #the result : 11 指定查找的起始和结束查找位置

2. join方法

  作用:join方法是非常重要的字符串方法,他是split方法的逆方法,用来连接序列中的元素,并且需要被连接的元素都必须是字符串。

a = ['','','']
print('+'.join(a)) #the result : 1+2+3

3. split方法

  作用:这是一个非常重要的字符串,它是join的逆方法,用来将字符串分割成序列

print('1+2+3+4'.split('+'))                            #the result : ['1', '2', '3', '4']

4. strip

  作用:strip 方法返回去除首位空格(不包括内部)的字符串

print("   test   test    ".strip())                #the result :“test   test”

5. replace

  作用:replace方法返回某字符串所有匹配项均被替换之后得到字符串

print("This is a test".replace('is','is_test'))     #the result : This_test is_test a test

6、首字母大写

>>> s = 'aBdkndfkFFD'
>>> s.capitalize()
'Abdkndfkffd'

7、Pinyin 模块,将汉字转换成拼音

#! /usr/bin/env python
# -*- coding: utf-8 -*-
from xpinyin import Pinyin while True:
p = Pinyin()
fullname = raw_input('name:').strip()
fullname = fullname.decode('utf8')
print fullname
xin = fullname[0]
ming = fullname[1:]
name = ming + '.' + xin
username = p.get_pinyin(name, '')
print username
print username + '@yiducloud.cn'

汉字转拼音

1.3 字典返回顶部

1、字典基本使用

  I.     键类型:字典的键不一定为整形数据,键可以是任意的不可变类型,比如浮点型(实行),字符串或者元组。
  II. 自动添加:即使键起初在字典中不存在,也可以为他赋值,这样字典就会建立新的项。而(在不适用append方法或者其他类似操作的情况下)不能将值关联到列表之外的索引上。

phonebook = {'Tom':8777,'Jack':9999,'Fly':6666}
print("Tom's Phonenumber is %(Tom)s" % phonebook) #Tom's Phonenumber is 8777

2、字典常用方法

1. clear

  作用:clear方法清除字典中所有的项,这是一个原地操作,所以无返回值(或则说返回None)

d = {}
d['Tom']=8777
d['Jack']=9999
print(d) #the result : {'Jack': 9999, 'Tom': 8777}
d.clear()
print(d) #the result : {}

2. copy

  作用:copy方法返回一个具有相同 ”键-值” 对的新字典,而不是副本

d = {'Tom':8777,'Fly':6666}
a = d.copy()
a['Tom'] = '改变后的值'
print(d) #{'Fly': 6666, 'Tom': 8777}
print(a) #{'Fly': 6666, 'Tom': '改变后的值'}

3. fromkeys

  作用:fromkeys方法使用给定的键建立新的字典,每个键都对应一个默认的值None。

  首先建造一个空字典,然后调用它的fromkeys方法,建立另一个字典

print({}.fromkeys(['name','age']))         #the result : {'age': None, 'name': None}

4. get

  作用:get方法是个更宽松的访问字典项的方法,如果试图访问字典中不存在的项时不会报错仅会      返回:None

d = {'Tom':8777,'Jack':8888,'Fly':6666}
print(d.get('Tom')) #the result : 8777
print(d.get('not_exist')) #the result : None

5. for循环字典的三种方法

d = {'Tom':8777,'Jack':8888,'Fly':6666}
for k,v in d.items():
print(k,v)
for k in d.values():
print(k)
for k in d.keys():
print(k)
d = {'Tom':8777,'Jack':8888,'Fly':6666}
for k in list(d.keys()):
print(k)
if k == 'Tom':
del d[k]
print(d) # {'Fly': 6666, 'Jack': 8888}

for循环的同时删除字典中元素的方法

6. pop

  作用:pop方法用于获得对应与给定键的值,然后将这个”键-值”对从字典中移除

d = {'Tom':8777,'Jack':8888,'Fly':6666}
v = d.pop('Tom')
print(v) #8777

7. popitem

  ① popitem方法类似于list.pop,list.pop会弹出列表的最后一个元素,但是popitem仅仅会弹出随机的项,因为字典没有”最后的元素”或则其他有关顺序的概念
  ② 所以想一个接一个的移除并处理字典中的项,popitem是非常有效的(因为不用获取键的列表)
  ③ 尽管popitem和列表的pop方法很类似,但是字典中没有与append等价的方法,因为字典是无序的,类似于append得方法是没有任何意义的

d = {'Tom':8777,'Jack':8888,'Fly':6666}
d.popitem()

8. setdefault

  作用:setdefault方法在某种程度上类似于get方法,能够获得与给定键相关联的值,除此之外,setdefault还能在字典中不含有给定键的情况下设定相应的键值

d = {'Tom':8777,'Jack':8888,'Fly':6666}
d.setdefault('Tom') #the result : 8777
print(d.setdefault('Test')) #the result : None
print(d) #{'Fly': 6666, 'Jack': 8888, 'Tom': 8777, 'Test': None}

9. update

  作用:update方法可以利用一个字典项更新另一个字典,提供的字典中的项会被添加到旧的字典中,如有相同的键则会被覆盖

d = {'Tom':8777,'Jack':8888,'Fly':6666}
a = {'Tom':110,'Test':119}
d.update(a)
print(d) #the result :{'Fly': 6666, 'Test': 119, 'Jack': 8888, 'Tom': 110}

10. 将两个列表组合成字典

keys = ['a', 'b']
values = [1, 2]
#1、zip生成字典
print(dict(zip(keys,values))) # {'a': 1, 'b': 2}
#2、for循环推倒字典
print({keys[i]: values[i] for i in range(len(keys))}) # {'a': 1, 'b': 2}

1.4 集合返回顶部

1、集合作用 

  1. 去重
  2.取两个列表的交集
  3. 取两个列表的并集

list_1 = [1,2,3,4,5,1,2]
#1、去重(去除list_1中重复元素1,2)
list_1 = set(list_1) #去重: {1, 2, 3, 4, 5}
print(list_1)
list_2 = set([4,5,6,7,8]) #2、交集(在list_1和list_2中都有的元素4,5)
print(list_1.intersection(list_2)) #交集: {4, 5} #3、并集(在list_1和list_2中的元素全部打印出来,重复元素仅打印一次)
print(list_1.union(list_2)) #并集: {1, 2, 3, 4, 5, 6, 7, 8} #4、差集
print(list_1.difference(list_2)) #差集:在list_1中有在list_2中没有: {1, 2, 3}
print(list_2.difference(list_1)) #差集:在list_1中有在list_2中没有: {8, 6, 7} #5、子集
print(list_1.issubset(list_2)) #子集: False List_1中的元素是否全部在list2中
#6、父集
print(list_1.issuperset(list_2)) #父集: False List_1中是否包含list_2中的所有元素 #7、交集
print(list_1 & list_2) #交集 {4, 5} #8、union并集
print(list_1 | list_2) #并集: {1, 2, 3, 4, 5, 6, 7, 8} #9、difference差集
print(list_1 - list_2) #差集: {1, 2, 3} #10、在集合中添加一个元素999
list_1.add(999)
print(list_1) #Add()方法: {1, 2, 3, 4, 5, 999} #11、删除集合中任意一个元素不会打印删除的值
list_1.pop() #Pop()方法: 无返回值 #12、discard删除集合中的指定元素,如过没有则返回None
print(list_1.discard("ddd")) #Discard()方法: 删除指定的值,没有返回None

集合常用方法

01: Python基本数据类型的更多相关文章

  1. 01 Python 基础数据类型

    基础数据类型,有7种类型,存在即合理. 1.int 整数 主要是做运算的 .比如加减乘除,幂,取余  + - * / ** %...2.bool 布尔值 判断真假以及作为条件变量3.str 字符串 存 ...

  2. Python基础数据类型题

    Python基础数据类型 题考试时间:三个小时 满分100分(80分以上包含80分及格)1,简述变量命名规范(3分) 1.必须是字母,数字,下划线的任意组合. 2.不能是数字开头 3.不能是pytho ...

  3. Python基本数据类型之字符串、数字、布尔

     一.数据类型种类 Python中基本数据类型主要有以下几类: Number(数字) String(字符串) Bool (布尔) List(列表) Tuple(元组) Sets(集合) Diction ...

  4. Python 输入输出 数据类型 变量

    python输入输出 数据类型 变量 输入输出 print()在Python3中是函数 >>>print('hello world') #print注意print前面不要有任何空格 ...

  5. python 基本数据类型分析

    在python中,一切都是对象!对象由类创建而来,对象所拥有的功能都来自于类.在本节中,我们了解一下python基本数据类型对象具有哪些功能,我们平常是怎么使用的. 对于python,一切事物都是对象 ...

  6. python常用数据类型内置方法介绍

    熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 下面介绍了python常用的集中数据类型及其方法,点开源代码,其中对主要方法都进行了中文注释. 一.整型 a = 100 a.xx ...

  7. 闲聊之Python的数据类型 - 零基础入门学习Python005

    闲聊之Python的数据类型 让编程改变世界 Change the world by program Python的数据类型 闲聊之Python的数据类型所谓闲聊,goosip,就是屁大点事可以咱聊上 ...

  8. python自学笔记(二)python基本数据类型之字符串处理

    一.数据类型的组成分3部分:身份.类型.值 身份:id方法来看它的唯一标识符,内存地址靠这个查看 类型:type方法查看 值:数据项 二.常用基本数据类型 int 整型 boolean 布尔型 str ...

  9. Python入门-数据类型

    一.变量 1)变量定义 name = 100(name是变量名 = 号是赋值号100是变量的值) 2)变量赋值 直接赋值 a=1 链式赋值  a=b=c=1 序列解包赋值  a,b,c = 1,2,3 ...

随机推荐

  1. vue--postcss插件

     vue-loader里的postcss插件会帮你抹平浏览器兼容的写法

  2. ODBC的JAR包和PLSQL

    eclipse编辑器,写java 下载ODBC的JAR包 配置一下用户名和密码 java连接上数据库后 不是直接操作数据库 在代码里面有SQL语句 代码执行的时候遇到这些语句就可以操作数据库  平时操 ...

  3. C++编译变更stlport到使用g++的stl经验总结

    . 花了几天时间,需要把经验给记下来. 1. 需要支持C++11的编译器,最方便的方式就是 yum -y install devtoolset-6 在/usr/local/bin中增加gcc6.sh ...

  4. iOS UI布局-定时器

    定时器是比较常用的一个UI控件,在付款.抢购时,经常会使用到.提取成一个通用的方法 /** * 倒计时GCD通用方法 * 通常用的计时器都是用NSTimer,但是NSTimer在线程很吃紧的时候效果不 ...

  5. cocos2dx - Lua 语言

    快捷注释: - -[[ print(10) - ->10  - - 不起作用(因为这是注释) - -]] 当重新启用这段代码时,只需在一次行行首添加一个连接字符即可: - - -[[ print ...

  6. C++ 执行 cmd 命令 删除文件 删除注册表项

    #include <Windows.h> WinExec("cmd /C \"del C:\\Windows\\secretWin.ini\"",S ...

  7. netcore swagger xml发布丢失问题

    1.netcore2.1.2,swagger.aspnetcore 1.1.0版本.发布netcore项目时swagger的接口文档xml 遗漏,始终发布不上去.后来查阅资料,讲的好像是netcore ...

  8. would you please...could you please...两句区别是什么?

    Could you please 是can you please 更为礼貌.委婉的说法,并不是过去式,是“能否麻烦你……”.“请你……”的意思,更侧重“能否”及客观情况:回答时要注意,eg:A:“Co ...

  9. 远程服务调用RPC框架介绍,微服务架构介绍和RPC框架对比,dubbo、SpringClound对比

    远程服务调用RPC框架介绍,微服务架构介绍和RPC框架对比,dubbo.SpringClound对比 远程服务调用RPC框架介绍,RPC简单的来说就是像调用本地服务一样调用远程服务. 分布式RPC需要 ...

  10. 阿里巴巴json fastjson String转javaBean

    private Entity getEntity(String resp){        JSONObject jsonObj = (JSONObject) JSON.parse(resp);    ...