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]) # 获取第 ...
随机推荐
- 【第六篇】javascript显示当前的时间(年月日 时分秒 星期)
不多说自己上代码 这是我开始学javascript写的,现在发出来 <span id="clock" ></span> function time() { ...
- HDU 1058 Humble Numbers【DP】
题意:给出丑数的定义,只含有2,3,5,7这四个素数因子的数称为素数.求第n个丑数. 可以先观察几个丑数得出规律 1:dp[1] 2:min(1*2,1*3,1*5,1*7) 3:min(2*2,1* ...
- 01.C语言关于结构体的学习笔记
我对于学习的C语言的结构体做一个小的学习总结,总结如下: 结构体:structure 结构体是一种用户自己建立的数据类型,由不同类型数据组成的组合型的数据结构.在其他高级语言中称为记录(record) ...
- Qt 获取usb设备信息 hacking
/************************************************************************** * Qt 获取usb设备信息 hacking * ...
- LeetCode Reverse Nodes in k-Group 每k个节点为一组,反置链表
题意:给一个单链表,每k个节点就将这k个节点反置,若节点数不是k的倍数,则后面不够k个的这一小段链表不必反置. 思路:递归法.每次递归就将k个节点反置,将k个之后的链表头递归下去解决.利用原来的函数接 ...
- android中handler用法总结
一.Handler的定义: Handler主要接收子线程发送的数据, 并用此数据配合主线程更新UI,用来跟UI主线程交互用.比如可以用handler发送一个message,然后在handler的线程中 ...
- yaf框架流程三
路由的原理请看http://yaf.laruence.com/manual/yaf.routes.html这个链接 要点:路由的顺序是堆栈模式的,及最后添加的路由规则最优先.由上两篇可知,定义的第一条 ...
- HDU5463 Clarke and minecraft
解题思路:此题刚开始,觉得好繁琐,好混乱,理清思路后,发现很简单. 具体见代码分析. #include<cstdio> #include<cstring> #include ...
- Struts2实现Preparable接口和【struts2】继承ActionSupport类
Struts2实现Preparable接口 实现preparable接口,实现public void prepare() throws Exception 方法.当你访问某问action指定方法之前, ...
- 一天一点MySQL复习——获取数据库系统时间、变量赋值、变量比较
一.SQL获取系统时间 mysql> select now() from dual; +---------------------+ | now() | +------------------- ...