Python基础2--Python简单数据类型
python简单数据类型
1 list
list的创建,使用[]
a_list = [‘a’, ’b’, ‘c’] print a_list print a_list[0] #a
如果去list的最后一个元素,除了计算索引位置外,还可用-1,依次类推,可以获取倒数第2个、倒数第3个
print a_list[-1] #c print a_list[-2] #b print a_list[-3] #a
list元素的增加
a_list.append(‘d’) #增加到末尾 a_list.insert(1, ’e’) #增加到指定位置 a_list.extend([‘f’, ‘g’, ‘h’) #将两个个对象的元素加到该list的末尾 a_list*3 #使用乘法扩展list
list元素的删除
del a_list[1] #删除指定元素 del a_list #删除整个list a_list.pop() #删除最后一个元素。要删除指定索引位置元素,pop(i) a_list.remove(‘a’) #删除首次出现的指定元素
list元素的替换
a_list[1] = ‘z’ #直接赋值给对应索引位置
list元素的数据类型可以不一样
a_list = [‘apple’, ‘123’, True] #True和False首字母要大写
list元素也可以是另一个list
a_list = [‘apple’, ‘orange’, [‘python’, 123], 321] print len(a_list) #
list元素访问和计数
直接使用索引位置访问
a_list[1]
获得指定元素首次出现的索引位置
a_list.index(‘a’)
获得指定元素在list中出现的次数
a_list.count(‘a’)
适用于元祖、字符串和range
range(10).count(3) # (2,2,2,4).count(2) # (‘a’, ‘b’, ’c’, ‘a’).count(‘a’) #
判定指定元素是否在list中
‘a’ in a_list
切片操作
x = range(10,100) x[::] #全取 x[::-1] #倒着全取 x[::2] #从头每两个取一个 x[::-2] #倒着每两个取一个 x[1::2] #从位置1每两个取一个 x[3:6] #取指定范围 x[:10 :2] #前10个中每两个取一个
list排序
a_list = [1,2,3,4,5,6] import random random.shuffle(a_list) #打乱顺序 a_list.sort() #默认升序 a_list.sort(reverse = True) #降序排序
还可以用sorted()排序,与sort()直接对list修改不同,sorted()返回新列表,不对原列表进行操作
b = sorted(a_list)
将list元素逆序
a_list.reverse()
还可以用reversed()排序,与reverse()直接对list修改不同,reversed()返回新列表,不对原列表进行操作
Newa = reversed(a)
2 tuple
tuple和list非常类似,但是tuple一旦初始化就不能修改,他没有append(),insert()这样的方法。获取元素的方法和list一样,但不能赋值成另外的元素
创建tuple用()
a_tuple = (‘a’, ’b’, ’c’)
如果建立只包含一个元素的元祖,要在后面加上逗号,
b_tuple = (‘a’,)
使用tuple()函数将其他类型序列转换为元祖
a = tuple(‘abcdefg’) alist = [1,2,3,4,’a’] tuple(alist)
3 dict
字典是“键-值对”的无序可变序列,字典中的每个元素包含两个部分:“键”和“值”,使用大括号{}。
字典的创建
d = {‘Michael’:95, ‘Bob’:75,’Tracy’:85} print d[‘Michael’] #
判断key是否存在
print ‘Bob’ in d #True print ‘bob’ in d #False
dict的读取
d[‘Michael’] #
还可以通过get的方法,如果key不存在,返回none或自己指定的value
d.get(‘Michael’) # d.get(‘Mi’, -1) #-1
dict的items()可以返回字典的“key-value”列表
for item in d.items(): print(item) for key in d: print(key) for key, value in d.items(): print(key, value)
dict元素的增加
当以key为下标时,若键存在,则修改value,若不存在,则加一堆key-value
d[‘Michael’] = 96 #将Michael的值从95修改为96 d[‘Jack’] = 80 #增加一对key-value
dict删除
要删除一对键值,用pop(key)
d.pop(‘Michael’)
4 set
set的每个元素都是唯一的,使用大括号{}
set的创建
a ={1,2} print a #set([1,2])
创建set也可以用set()函数将列表、元祖转换为set,如果原来的数据中存在重复元素,在转换时只保留一个
a_set =set(range(8,14)) print a_set
set的增加
a.add(3) print a #set([1,2,3])
set的运算
s1 = set([1,2,3]) s2 = set([2,3,4]) print s1&s2 #交集 print s1|s2 #并集
Python基础2--Python简单数据类型的更多相关文章
- python基础-----变量和简单数据类型
初识变量 1.变量命名规则: a.字母 b.数字(不能开头) c.下划线 ps.硬性规定,命名必须是字母,数字,下划线,且不能以数字开头. 软性规则,以下划线分割 2.实例: a.写法: age_of ...
- 二十一. Python基础(21)--Python基础(21)
二十一. Python基础(21)--Python基础(21) 1 ● 类的命名空间 #对于类的静态属性: #类.属性: 调用的就是类中的属性 #对象.属性: 先从自己的内存空间里找名 ...
- 计算机基础,Python基础--变量以及简单的循环
一.计算机基础 1.CPU 相当于人体的大脑,用于计算处理数据. 2.内存 用于存储数据,CPU从内存调用数据处理计算,运算速度很快. PS:问:既然在内存里的数据CPU运算速度快,为什么计算机不全 ...
- Python基础简介与简单使用
Python介绍 Python发展史 1989年,为了打发圣诞节假期,Guido开始写Python语言的编译器.Python这个名字,来自Guido所挚爱的电视剧Monty Python’s Flyi ...
- python基础之五大标准数据类型
学习一门语言,往往都是从Hello World开始. 但是笔者认为,在一个黑框框中输出一个"你好,世界"并没有什么了不起,要看透事物的本质,熟悉一门语言,就要了解其底层,就是我们常 ...
- 第二章:Python基础の快速认识基本数据类型和操作实战
本课主题 字符串和操作实战 二进制操作实战 List 列表和操作实战 Tuple 元組和操作实战 Dict 字典和操作实战 作業需求 引言 这遍文章简单介绍了 Python 字符串和集合的方法和应用, ...
- Python基础系列----语法、数据类型、变量、编码
1.基本语法 Python ...
- Python的变量及简单数据类型
Python的变量及简单类型 1. 变量 在Python编程中,变量是用来存放值或对像的容器.变量的名称可以自定义,但需遵循一定的规范,否则可能会引发一些错误.Python的变量可以分为数字.字符和 ...
- 说说 Python 的变量以及简单数据类型
1 变量 先来看一个示例: news="我国第一个人工智能规划问世"print(news) 运行结果: 可以看出使用 Python 定义变量很简单,甚至都不需要指定变量的类型. 1 ...
- python基础语法_2基本数据类型
http://www.runoob.com/python3 大纲 Number(数字) String(字符串) List(列表) Tuple(元组) Sets(集合) Dictionarys(字典 ...
随机推荐
- MySQL 分页查询和存储过程
一.分页查询 使用limit函数,limit关键字的用法: LIMIT [offset,] rows: offset指定要返回的第一行的偏移量,rows第二个指定返回行的最大数目.初始行的偏移量是0( ...
- sparklyr-R语言访问Spark的另外一种方法
Connect to Spark from R. The sparklyr package provides a complete dplyr backend. Filter and aggregat ...
- flask-前台布局页面搭建3
4.前台布局的搭建 由于前端知识有限,我在网上下载的人家的前台源码,附上链接 https://link.jianshu.com/?t=https://github.com/mtianyan/movie ...
- Fiddler 抓包工具总结【转载】
原博主连接在文章底部 Fiddler是一个蛮好用的抓包工具,可以将网络传输发送与接受的数据包进行截获.重发.编辑.转存等操作.也可以用来检测网络安全.反正好处多多,举之不尽呀!当年学习的时候也蛮费劲, ...
- 【九校联考-24凉心模拟】锻造(forging)
题目背景 勇者虽然武力值很高,但在经历了多次战斗后,发现怪物越来越难打, 于是开始思考是不是自己平时锻炼没到位,于是苦练一个月后发现……自 己连一个史莱姆都打不过了. 勇者的精灵路由器告诉勇者其实是他 ...
- ActiveMQ 处理不同类型的消息
ActiveMQ 中的消息都继承自 org.apache.activemq.command.BaseCommand 类. broker 处理消息的调用栈如下: TransportConnection ...
- Qt动态布局
QVBoxLayout *m_pvLayout = NULL: QWidget *m_pWidgetPlay = NULL: m_pvLayout = new QVBoxLayout(this); m ...
- Java中的标签
@SuppressWarnings 简介:java.lang.SuppressWarnings是J2SE 5.0中标准的Annotation之一.可以标注在类.字段.方法.参数.构造方法,以及局部变量 ...
- linux图形和命令界面切换
一.系统不在虚拟机中的情况 使用ctrl+alt+F1~6切换到命令行界面:ctrl+alt+F7切换到图形界面 二.系统在虚拟机中的情况 Ctrl+Alt+shift+F1~6切换到命令行界面:使用 ...
- nginx:负载均衡(三)分流策略
[1]轮询策略.轮询策略是最简单的策略,无脑配置,不考虑服务器的访问的能力.每个请求按照时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除 upstream www.daysn. ...