Python基础知识(三)-----字典表、元组和文件

一. 字典表(键对应值)

  1. 声明(两种方式)
d={'ISBN':'23412343','Titile':'Python入门','price':39.0}
d
{'ISBN': '23412343', 'Titile': 'Python入门', 'price': 39.0}
emp=dict(name='Mike',age=20,job='dev')
emp
{'name': 'Mike', 'age': 20, 'job': 'dev'}
  1. 操作
    (1)获取
d['price']
39.0
d.get('price')
39.0
d.get('Price',0.0)
0.0

(2)合并

dep={'department':'technology'}
emp.update(dep)
emp
{'name': 'Mike', 'age': 20, 'job': 'dev', 'department': 'technology'}
  1. 属性
    (1) keys()
emp.keys()
dict_keys(['name', 'job', 'department'])

(2) values()

emp.values()
dict_values(['Mike', 'dev', 'technology'])

(3) items()

emp.items()
dict_items([('name', 'Mike'), ('job', 'dev'), ('department', 'technology')])
  1. 排序键
    (1)将keys()放入列表再排序
d={'a':1,'b':2,'c':3,'d':4}
ks=list(d.keys())
ks.sort()
ks
['a', 'b', 'c', 'd']
for k in ks:
...    print(d.get(k))
...    
1
2
3
4

(2)使用全局函数sorted()

for k in sorted(ks):
...    print(k,d.get(k))
...    
a 1
b 2
c 3
d 4

二. 元组(不支持原位改变)

  1. 特征
    (1)任意对象有序集合
    (2) 通过下标访问
    (3)属“不可变”类型
    (4)长度固定,任意类型,任意嵌套
  2. 声明
    (1)(元素)
    (2)index():查找索引
t=(1,2,3,4,5)
t.index(3)
2

(3) count():统计数量

t.count(3)
1

(4)嵌套

res=[]
for x in t:
...    res.append(x**2)
...    
res
[1, 4, 9, 16, 25]
res=[x**2 for x in t]
res
[1, 4, 9, 16, 25]
  1. namedtuple (很像类)
from collections import namedtuple
Employee=namedtuple('Employee',['name','age','department','salary'])
jerry=Employee('Jerry',age=30,department='eco',salary=9000)
jerry
Employee(name='Jerry', age=30, department='eco', salary=9000)
jerry.name
'Jerry'
jerry.salary
9000

三. 文件

1. 基本语法

  1. file=open(‘文件名’,mode)
  2. mode(r读取,w写文件,a追加信息,b操作二进制文件,+即可读又可写)

2.操作

  1. read()
myfile=open('hello.txt','w')
myfile.write('优品课堂\n')
5
myfile.write('Hello world\n')
12
myfile.close()
f=open('hello.txt','r')
f.read()
'优品课堂\nHello world\n'
  1. readline() 读取一行
f=open('hello.txt')
f.readline()
'优品课堂\n'
f.readline()
'Hello world\n'
  1. readlines() 读取多行
l=open('hello.txt').readlines()
l
['优品课堂\n', 'Hello world\n']
  1. close()
  2. format
x,y,z=1,2,3
l=[1,2,3]
f=open('datafile.txt','w')
f.write('{},{},{}'.format(x,y,z))
5
f.write(str(l))
9
f.close()

3. pickle存取Python数据

  1. dump(对象,目标文件)
d={'a':1,'b':2}
f=open('datafile,pkl','wb')
import pickle
pickle.dump(d,f)
  1. load(文件)
f=open('datafile,pkl','rb')
data=pickle.load(f)
data
{'a': 1, 'b': 2}
data['a']
1
data.get('b')
2
  1. 直接跳脱,不用写close()
with open('course.txt') as f:
...    for line in f.readlines():
...        print(line)
...        
优品课堂 Python教程
www.codeclassroom.com

三. 汇合

1. 集合

  1. 序列
    (1) 可变:列表 list
    (2) 不可变: 字符串 str ,元组 tuple,字节数组
  2. 映射:字典表
  3. 集合: Set

2. 数字

  1. 整型
    (1)int
    (2) boolean
  2. 浮点型
    (1) float
    (2) Decimal
    (3) …

3. 可调用

  1. 函数 function
  2. 生成器 Generator
  3. 类 class
  4. 方法

4. 其他

  1. 文件
  2. None
  3. 视图

5. 内部

  1. Type
发布了11 篇原创文章 · 获赞 0 · 访问量 187

猜你喜欢

转载自blog.csdn.net/mangogogo321/article/details/104045841