Python基础 数字、字符串、列表、元组、字典
Number(数字)---> int、float、complex(复数)
在Python3中,整形(int)就是常见的整数:1,100,500,1000......
浮点型(float),就是我们常见的用小数点表示的小数,例如0.5, 1.2, 3.14,等等。
复数(complex, 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。
属性 | 描述 |
num.real | 该复数的实数部分 |
num.imag | 该复数的虚数部分 |
num.conjugat() |
返回该复数的共轭算数 |
n = '123' print(type(n)) m = int(n) print(type(m)) num = '101' a = int(num, base=2) b = int(num, base=8) c = int(num, base=10) # 等同 int(num) d = int(num, base=16) print(a) print(b) print(c)
执行结果:
<class 'str'> <class 'int'> 5 65 101 257
String(字符串)--->str
---*---传送门---*---
Python中的字符串用单引号(')或双引号(")括起来,同时使用反斜杠(\)转义特殊字符,加号 (+) 是字符串的连接符, 星号 (*) 表示复制当前字符串,紧跟的数字为复制的次数。
input接收的值默认为str类型,使用type()可以返回一个数据类型。
s = 'lcgSmile' s1 = s.capitalize() # 首字母大写。 print(s1) s2 = s.casefold() # 字符串全输出为小写 相比lower()能识别更多不限于ASCII(A-Z)字符。 print(s2) s3 = s.center(20, '-') # 原字符串居中,填充至一定长度的新字符串,默认填充字符为空格。 print(s3) s4 = s.endswith('e') # 判断字符串是否以指定后缀结尾,如果以指定后缀结尾返回True print(s4) s5 = s.find('c') # 查找子串在字符串的开始位置。 print(s5) s6 = s.index('g') # 如果包含子字符串返回开始的索引值,否则抛出异常。 print(s6)
执行结果:
Lcgsmile lcgsmile ------lcgSmile------ True 1 2
索引
+---+---+---+---+---+---+ | P | y | t | h | o | n | +---+---+---+---+---+---+ 0 1 2 3 4 5 -6 -5 -4 -3 -2 -1
List(列表)--->list
列表对象方法的清单:
list.
append
(x)
-
添加一个元素到列表的末尾。相当于
a[len(a):] = [x]
.
list.
extend
(L)
-
将给定列表L中的所有元素附加到原列表a的末尾。相当于
a[len(a):] = L
.
list.
insert
(i, x)
-
在给定位置插入一个元素。第一个参数为被插入元素的位置索引,因此
a.insert(0, x)
在列表头插入值,a.insert(len(a), x)
相当于a.append(x)
.
list.
remove
(x)
-
删除列表中第一个值为 x 的元素。如果没有这样的元素将会报错。
list.
pop
([i])
-
删除列表中给定位置的元素并返回它。如果没有给定位置,
a.pop()
将会删除并返回列表中的最后一个元素。(i 两边的方括号表示这个参数是可选的,而不是要你输入方括号。你会在 Python 参考库中经常看到这种表示法)。
list.
clear
()
-
删除列表中所有的元素。相当于
del a[:]
.
list.
index
(x)
-
返回列表中第一个值为 x 的元素的索引。如果没有这样的元素将会报错。
list.
count
(x)
-
返回列表中 x 出现的次数。
list.
sort
(key=None, reverse=False)
-
排序列表中的项 (参数可被自定义, 参看
sorted()
).
list.
reverse
()
-
列表中的元素按位置反转。
list.
copy
()
-
返回列表的一个浅拷贝。相当于
a[:]
.
列表方法示例:
>>> a = [66.25, 333, 333, 1, 1234.5] >>> print(a.count(333), a.count(66.25), a.count('x')) 2 1 0 >>> a.insert(2, -1) >>> a.append(333) >>> a [66.25, 333, -1, 333, 1, 1234.5, 333] >>> a.index(333) 1 >>> a.remove(333) >>> a [66.25, -1, 333, 1, 1234.5, 333] >>> a.reverse() >>> a [333, 1234.5, 1, 333, -1, 66.25] >>> a.sort() >>> a [-1, 1, 66.25, 333, 333, 1234.5] >>> a.pop() 1234.5 >>> a [-1, 1, 66.25, 333, 333]
你可能已经注意以下方法 insert
、 remove
或 sort
只修改列表且没有可打印的返回值 — — 他们返回默认 None
。这是Python里可变数据结构的设计原则。
del
语句
有一个方法可以根据索引而不是值从列表中删除一个元素:del
语句。这跟pop()
方法不同,后者会返回一个值。del
语句也可以用于从列表中删除片段或清除整个列表(先前我们通过将一个空列表赋值给这个片段来达到此目的)。例如:
>>> a = [-1, 1, 66.25, 333, 333, 1234.5] >>> del a[0] >>> a [1, 66.25, 333, 333, 1234.5] >>> del a[2:4] >>> a [1, 66.25, 1234.5] >>> del a[:] >>> a []
del
也可以用于删除整个变量︰
>>> del a
如果再次对变量a
进行引用将引起错误(至少在对变量a再次赋值前)。
Tuple(元组)--->tuple
元组其实跟列表差不多,也是存一组数,只不是它一旦创建,一级元素不能再修改,所以又叫只读列表。
构造包含0个或1个元素的元组:空的元组通过一对空的圆括号构造;只有一个元素的元组通过一个元素跟随一个逗号构造
>>> empty = () >>> singleton = 'hello', >>> len(empty) 0 >>> len(singleton) 1 >>> singleton ('hello',)
它只有2个方法,一个是count,一个是index,用法跟列表用法相似。可以通过迭代访问其中的元素。
Dictionary(字典)--->dict
另一个有用的Python内置数据类型是字典(映射类型)。与由数字索引的序列不同,字典是依据键索引的,键可以是任意不可变的类型;字符串和数字始终能作为键。元组可以用作键,如果它们只包含字符串、 数字或元组;如果一个元组直接或间接地包含任何可变对象,它不能用作键。不能使用列表作为键,因为列表可以使用索引赋值、切片赋值或append()
和extend()
方法在原变量上修改。
理解字典的最佳方式是把它看做无序的键:值对集合,要求是键必须是唯一的(在同一个字典内)。一对空的花括号创建一个空的字典:{}
。将用逗号分隔的键:值对序列放置在花括号中将添加初始的键:值对到字典中;这也是字典写到输出中的方式。
字典的主要操作是依据键来存取值。还可以通过del
删除一个键:值对。如果你用一个已经存在的键存储值,那么以前为该键分配的值就会被覆盖。从一个不存在的键中读取值会导致错误。
访问字典里的值
通过键访问(访问不存在的键会报错)
d = {'a': ('a',), 'b': 'ab', 7: 'ab'} print(d[7]), print(d['a'])
ab ('a',)
删除字典元素
删单一的元素(del命令)也能清空字典(dict.clear())
d = {'a': ('a',), 'b': 'ab', 7: 'ab'} del d['a'], print(d)
{7: 'ab', 'b': 'ab'}
d = {'a': ('a',), 'b': 'ab', 7: 'ab'} d.clear() print(d)
{}
字典内置的魔法
序号 | 函数及描述 |
---|---|
1 | .clear() 删除字典内所有元素 |
2 | .copy() 返回一个字典的浅复制 |
3 | dict.fromkeys(seq[, value])) 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值 |
4 | dict.get(key, default=None) 返回指定键的值,如果值不在字典中返回default值 |
5 | key in dict 如果键在字典dict里返回true,否则返回false |
6 | dict.items() 以列表返回可遍历的(键, 值) 元组数组 |
7 | dict.keys() 以列表返回一个字典所有的键 |
8 | dict.setdefault(key, default=None) 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default |
9 | dict.update(dict2) 把字典dict2的键/值对更新到dict里 |
10 | dict.values() 以列表返回字典中的所有值 |
.clear()
d1 ={1: 2, 3: 4, 5: 6} d1.clear() print(d1)
{}
.copy()
d1 ={1: 2, 3: 4, 5: 6} d2 = d1.copy() print(d2)
{1: 2, 3: 4, 5: 6}
dict.fromkeys(seq[,vase])
- seq -- 字典键值列表。
- value -- 可选参数, 设置键序列(seq)的值。
t = ('a', 'b', 'c') d1 = dict.fromkeys(t) print(d1) d2 = dict.fromkeys(t, 'e') print(d2)
{'b': None, 'a': None, 'c': None} {'b': 'e', 'a': 'e', 'c': 'e'}
.get(key, default=None)
返回指定键的值,如果值不在字典中返回默认值。
- key -- 字典中要查找的键。
- default -- 如果指定键的值不存在时,返回该默认值值。
d1 ={1: 2, 3: 4, 5: 6} i = d1.get(1) v = d1.get(2,100) n = d1.get('a') print(i), print(v), print(n)
2 100 None
.items()
item()方法把字典中每对key和value组成一个元组,并把这些元组放在列表中返回。
d1 ={1: 2, 3: 4, 5: 6} v =d1.items() print(v)
dict_items([(1, 2), (3, 4), (5, 6)])
此方法常配合for...in...用于字典的遍历
for key,value in dict.items():
print (key,value)
d1 ={1: 2, 3: 4, 5: 6} for k, v in d1.items(): print(k, v)
1 2 3 4 5 6
.key()
字典 keys() 方法以列表返回一个字典所有的键。
d1 = {1: 2, 3: 4, 5: 6} v = d1.keys() print(v)
dict_keys([1, 3, 5])
.setdefault()
字典 setdefault() 方法和get()方法类似, 如果键不已经存在于字典中,将会添加键并将值设为默认值。
- key -- 查找的键值。
- default -- 键不存在时,设置的默认键值。
d1 = {1: 2, 3: 4, 5: 6} d1.setdefault(7) d1.setdefault(8, 9) print(d1)
{8: 9, 1: 2, 3: 4, 5: 6, 7: None}
d_shou.update(d_chuan)
字典 update() 函数把字典d_chuan的键/值对更新到d_shou里。
d1 = {1: 2, 3: 4, 5: 6} d2 = {'a': 'b', 'c': 'd'} d1.update(d2) print(d1), print(d2)
{1: 2, 3: 4, 5: 6, 'c': 'd', 'a': 'b'} {'c': 'd', 'a': 'b'}
.values
字典 values() 方法以列表返回字典中的所有值。
d1 = {1: 2, 3: 4, 5: 6} v = d1.values() print(v)
dict_values([2, 4, 6])
Python基础 数字、字符串、列表、元组、字典的更多相关文章
- python基础之02列表/元组/字典/set集合
python中内置的数据类型有列表(list)元组(tuple)字典(directory). 1 list list是一种可变的有序的集合.来看一个list实例: #第一种方法: >>&g ...
- Python数据类型-布尔/数字/字符串/列表/元组/字典/集合
代码 bol = True # 布尔 num = 100000000; # 数字 str = "fangbei"; # 字符串 str_cn = u"你好,方倍" ...
- Python自动化开发 - 字符串, 列表, 元组, 字典和和文件操作
一.字符串 特性:字符串本身不可修改,除非字符串变量重新赋值.Python3中所有字符串都是Unicode字符串,支持中文. >>> name = "Jonathan&q ...
- Python第三天 序列 数据类型 数值 字符串 列表 元组 字典
Python第三天 序列 数据类型 数值 字符串 列表 元组 字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...
- Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式
Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell ...
- python字符串 列表 元组 字典相关操作函数总结
1.字符串操作函数 find 在字符串中查找子串,找到首次出现的位置,返回下标,找不到返回-1 rfind 从右边查找 join 连接字符串数组 replace 用指定内容替换指定内容,可以指定次数 ...
- python字符串/列表/元组/字典之间的相互转换(5)
一.字符串str与列表list 1.字符串转列表 字符串转为列表list,可以使用str.split()方法,split方法是在字符串中对指定字符进行切片,并返回一个列表,示例代码如下: # !usr ...
- python 字符串,列表,元组,字典相互转换
1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} 字典转为字符串,返回:<type 'str'> {'age': 7, 'n ...
- python 基础篇 04(列表 元组 常规操作)
本节主要内容:1. 列表2. 列表的增删改查3. 列表的嵌套4. 元组和元组嵌套5. range 一. 列表1.1 列表的介绍列表是python的基础数据类型之一 ,其他编程语言也有类似的数据类型. ...
- python基础数据类型之列表,元组操作
一.列表的索引和切片1.列表的索引列表和字符串一样样拥有索引 lst = ["a","b","c"] print(lst[0]) # 获取第 ...
随机推荐
- 剑指offer-第三章高质量的代码(调整数组顺序使得奇数位于偶数的前面)
题目:输入一个整数数组,实现一个函数中调整该数组中数字的顺序,使得所有的奇数位于数组的前半部,所有偶数位于数组的后半部. 思路:用两个指针p1和p2,分别指向数组的头和尾部,p1只向后移,p2只向前移 ...
- 【转】Git连接oschina管理代码版本
原文网址:http://blog.csdn.net/liukang325/article/details/24051467 工作中一般都是用的SVN,最近好像GitHub有些火,看到开源中国上也有Gi ...
- Android的两种上下文的区别
1.Activity.this,Activity是间接继承自Context 2.getApplicationContext()返回来的就是Context 3.getBaseContext()返回的也是 ...
- python基础之使用os.system来执行系统命令
今天我们来尝试使用python 的os.system来执行系统命令 可以使用如下方法: import osprint os.system('ping www.baidu.com') 输出的结果是:64 ...
- cppunit使用详解
cppunit使用详解 第一步:如何安装 (我的运行环境: fc7 Linux, gcc4) cppunit 的安装是相当标准的linux的安装过程 a. 下载cppunit的源文件 ...
- JdbcTemplate与事务
JdbcTemplate操作采用的是JDBC默认的AutoCommit模式,也就是说我们还无法保证数据操作的原子性(要么全部生效,要么全部无效),如: JdbcTemplate jdbcTemplat ...
- LruCache--远程图片获取与本地缓存
Class Overview A cache that holds strong references to a limited number of values. Each time a value ...
- 转--优化临时表使用,SQL语句性能提升100倍
转自:http://www.51testing.com/html/01/n-867201-2.html [问题现象] 线上mysql数据库爆出一个慢查询,DBA观察发现,查询时服务器IO飙升,IO占用 ...
- org.unsaved transient instance - save the transient instance before flushing: bug解决方案
最近开发和学习过程中,遇到很多零碎的知识点,在此简单地记录下: 1.遇如下bug: org.unsaved transient instance - save the transient instan ...
- jQuery选择器之全面总结
选择器是jQuery的根基,在jQuery中,对事件处理,遍历DOM和Ajax操作都依赖于选择器.如果能熟练的使用选择器,不仅能简化代码,而且可以达到事半功倍的效果. jQuery中的选择器完全继承了 ...