Python学习笔记(2)

3.3 标志符与赋值号

3.3.1 标志符

标识符是大小写敏感的 abc a2c _acd aKb

3.3.2 "="

In [2]:

x = 3
y = 3
y = x+5
print(x,y)
3 8

3.4 结构数据类型

3.4.1 列表

In [8]:

list() #这里注意是(),可参考元祖

Out[8]:

[]

In [4]:

[]

Out[4]:

[]

In [5]:

[1,]

Out[5]:

[1]

In [6]:

[1,2,3]

Out[6]:

[1, 2, 3]

In [14]:

alist = ['a',1,'b',2.0]
print(alist)
print(alist[2])  #元素的序号从0开始
[None]*5  #列表支持乘法运算,类似于字符串
'abc'*5
['a', 1, 'b', 2.0]
b

Out[14]:

'abcabcabcabcabc'

list.append(x) 列表尾部追加成员x .count(x) 返回列表中元素x出现的次数 .extend(L) 列表中追加一个列表 .index(x) 返回元素x在列表中的序号 .insert(index,object) 制定位置插入元素 .pop() 删除尾部元素并返回 .remove(x) 删除指定元素,有多个相同元素删除第一个 .reverse() 顺序颠倒 .sort() 排序 列表操作中并不返回列表,只是修改列表

In [25]:

alist = [1,2,3,4,5]
print(alist)
alist.append(1)
print(alist)
print(alist.count(1))
alist.extend([2,'insert'])
print(alist)
alist.insert(3,0)
print(alist)
alist.pop()
alist.remove(1)
print(alist)
alist.reverse()
print(alist)
alist.sort()
print(alist)
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5, 1]
2
[1, 2, 3, 4, 5, 1, 2, 'insert']
[1, 2, 3, 0, 4, 5, 1, 2, 'insert']
[2, 3, 0, 4, 5, 1, 2]
[2, 1, 5, 4, 0, 3, 2]
[0, 1, 2, 2, 3, 4, 5]

3.4.2 元祖

元祖可以看成是一种特殊的列表,一旦建立就不能改变。

In [37]:

()
tuple()
(1,)  #建立只有一个元素的元祖,元素后一定要有一个‘,’
2,3  #直接用逗号隔开两个值,也可以创建一个元祖
x,y=2,3 #右边为一个元祖,自动将第一个元素与x绑定
print(x,y)
x,y=y,x  #交换x,y的值,本质上右边是一个元祖
print(x,y)
atpl = (1,2,3)
print(atpl[1]) #引用序号1的元素,可以看出与列表一样序号从0开始
2 3
3 2
2

3.4.3 字典

以‘键:值’形式存在 {} 只能通过键访问值,不能通过位置访问

In [44]:

{}
dict()
adct = {'a':1,'b':2,'c':3.4}
print(adct)
print(adct['b'])
{'a': 1, 'b': 2, 'c': 3.4}
2

dic.clear() 清空字典 .copy() 复制字典 .get(k,[default]) 获得键k对应的值,不存在则返沪default .items() 获得由键和值组成的迭代器 .keys() 获得键的迭代器 .pop(k) 删除k:v成员对 .update(adict) 从另一个字典更新成员,不存在就创建,存在就覆盖 .values() 获得值的迭代器 .fromkeys(iter,value) 以列表、元祖中给定的键建立字典,成员为value,白话就是值固定,键按列表或元祖增加,很奇特的用法 .popitem() 从字典中删除任意k:v并返回,随机删除 .setdefault(k,default) 如字典中存在键k,返回值,否则就建立k:edfault

In [95]:

adct = {'a':1,'b':2}
adct_b = {'c':3,'d':4}
alist = ['a','b','c','d','e']
alist_c = [1,2,3,4,5]
print(adct)
adct.clear()
print(adct)
adct = adct_b.copy()
print(adct)
print(adct.get('c'))
print(adct.items())
adct.pop('c')
print(adct)
adct.update(adct_b)
print(adct)
print(adct.values())
print(adct_c.fromkeys(alist,alist_c))
print(adct_c.popitem()) 
print(adct_c)
print(adct_c.setdefault('a',999))
{'a': 1, 'b': 2}
{}
{'c': 3, 'd': 4}
3
dict_items([('c', 3), ('d', 4)])
{'d': 4}
{'d': 4, 'c': 3}
dict_values([4, 3])
{'a': [1, 2, 3, 4, 5], 'b': [1, 2, 3, 4, 5], 'c': [1, 2, 3, 4, 5], 'd': [1, 2, 3, 4, 5], 'e': [1, 2, 3, 4, 5]}
('a', 999)
{}
999

3.5 内置常量与逻辑运算符、比较运算符

3.5.1 常用内置常量

None 无 Ture False Python中逻辑为假包括false,none,0,空字符串,空元祖,空列表,空字典等

3.5.2 Python中逻辑运算符

and or not

3.5.3 Python中比较运算符

== > < >= <= != 字符串也是可以比较大小的,依据是其ascii码

3.5.4 Python中其他逻辑操作符

1、is和is not

is和is not 都是二元操作符,用于判断左边和右边对象引用是否指向同一个对象。

2、in和not in

in和not in 都是成员操作符,用于检查某个数据是否存在于某个字符串、列表、元祖、字典等。 对于字典来说,检查的是键,而不是值。

3.6 序列

元祖是不可变的,字符串也是不可变的(修改字符串就是重新创建一个字符串)

3.6.1 序列切片

In [97]:

alst = [0,1,2,3,4,5,6,7,8,9]
print(alst[0])
print(alst[-10])
0
0

alst[:] 取全部成员数据 [0:] 同上 [:-1] 取除最后一个成员外的所有数据 [2:5] 得到[2,3,4] [::2] 每隔1个取一个成员 [0:5:2] 从0到4每隔一个取成员 [::-1] 从右到左取全部成员数据 [5:0:-2] 从5开始往左取,每隔一个取

In [99]:

alst = [0,1,2,3,4,5,6,7,8,9]
print(alst[:])
print(alst[0:])
print(alst[:-1])
print(alst[2:5])
print(alst[::2])
print(alst[0:5:2])
print(alst[::-1])
print(alst[5:0:-2])
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 1, 2, 3, 4, 5, 6, 7, 8]
[2, 3, 4]
[0, 2, 4, 6, 8]
[0, 2, 4]
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
[5, 3, 1]

3.6.2 序列内置操作

len(s) 返回s的元素长度 min(s) 返回s中的最小值 max(s) 返回s中的最大值 sum(s[,start]) 返回s中各项的和 all(s) s所有项为真,则返回真,否则返回假 any(s) s中有一箱为真,则返回真,否则返回假

In [108]:

s = [0,1,2,3,4]
print(len(s))
print(min(s))
print(max(s))
print(sum(s))
print(sum(s,900))  #求和后加上了后面的900
print(all(s))  #0为false
print(any(s))
5
0
4
10
910
False
True

转载于:https://my.oschina.net/zhackj/blog/1632697

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值