不走心的python24小时速成指北(下)
中间经过了几天摸鱼后,终于想起来把这个下篇写完。虽然名字叫下篇,其实余下的内容已经很少很少了,大概会比上篇看起来轻松一点(大概)。
再有就是,因为是极速入门指南,几乎就没有举什么例子,建议真正有需求的同学还是再去找个OJ平台练习一下比较好。毕竟这个阶段还是个熟练工种啊233333
以下正文:
5.本小节内容包括:常用组合数据类型(集合、序列)
集合用大括号{}表示,元素间用逗号分割
建立集合可以使用{}或set()
注意,建立空集合必须使用set()
举例:
A={“python”,123,(“python”,123)}
B=set(“pypy123”)
此时A中有三个元素,分别是字符串、整数和一张表
B中则储存了五个字符
注意,python集合中会自动忽略完全相同的元素
|并-差&交^补(返回两集合中不同的元素
大于号小于号(大于等于)用于判断包含关系,返回布尔表达式
常用函数
S.add(x)将X增加进集合S中
S.diacard(x)从S中删去元素X
S.remove(x)从S中删去X,如果X不在S中则产生KeyError异常
S.clear()清空S
S.pop()随机返回S的一个元素,更新S,若S为空则产生KetError异常
S.copy()返回S的一个副本
len(S)返回集合中元素的个数
x in S返回布尔表达式
x not in S同上
set(x)将标量x的类型转化为集合
序列类型:具有先后关系的一组元素,用[]表示,逗号分隔
是一维元素向量,元素间类型可以不同
元素间由序号引导,通过下标可以访问特定元素
和字符串一样,支持正向递增反向递减的标号顺序
可以使用字符串的操作符
len min max函数可以使用
s.index(x)或s.index(x,i,j)返回序列s从i到j位置第一次出现x的位置
s.count(x)返回序列中x的出现次数
元祖是序列的一种扩展,是一种序列类型
一旦创建就不能被修改
使用小括号()或tuple()创建,用逗号分割元素
也可以不适用小括号
且元祖中的元素可以是另一个元祖
列表也是序列的一种扩展,创建后可以随意被修改
使用方括号[]或list()创建,逗号分割
列表中元素可以不同类型,且无长度限制
常用操作:
ls[i]=x替换列表ls中第i元素为x
ls[i:j:k]=lt ls列表中切片替换为lt列表
del ls[i]删除第i元素
del ls[i:j:k]删除步长切片
append(x)clear copy insert(i,x)
pop(i) remove reverse等函数都可以使用
字典类型
字典是键值对的集合,键值对之间无序
采用大括号{}和dice()创建,键值对用冒号表示
{:,:,:}
在使用字典变量时,一般是通过键来获得值
=[]这样的写法
用[]向字典变量中索引或增加元素
常用函数,in和del可用
d.keys()返回所有键的信息
d.values()返回所有值的信息
d.ite,s()返回所有键值对的信息
d.get(k,default)若键k存在则返回相应值,不存在就返回default的值
d.pop(k,default)若k存在就取出相应值,不在就返回default值
d.poptiem()随机取出一个键值对,以元组形式返回
clear和len可用
6.本小节内容包括:文件操作、基本os库
文件的打开
变量名=open(文件名,打开模式)
其中变量名即文件句柄
文件名要包括文件路径和名称,源文件同目录可以省略路径
打开模式要区分读写、文本或二进制
文件路径卷标后要加冒号,各级文件夹可以用/或\\
关于打开模式
r只读,是默认值,文件不存在则返回error
w覆写,文件不存在就创建,存在就覆盖
x创建写模式,不存在就创建,存在就报错
a追加写模式,不存在就创建,存在就追加内容
b二进制文件
t文本文件,默认
+与rwxa操作一同使用,基础上增加读写功能
句柄.read(size=-1)读入全部内容,如果给出参数则读入前size的长度
句柄.readline(size=-1)读入一行内容,给出参数则读入该行前size内容
句柄.readlines(hint=-1)读入所有行,有参数就前hint行,以每行为元素形成一个列表
句柄.write(s)项文件写入一个字符串或字节流
句柄.writelines(lines)将一个元素全为字符串的列表写入文件
句柄.seek(offset)改变当前文件操作指针的位置
文件开头
1当前位置
2文件结尾
关于seek函数,举一个小例子:
fo=open("output.txt","w+")
ls=["a","b","c"]
fo.writelines(ls)
for line in fo:
print(line)
fo.close()
这个程序是不会有任何输出的
而
fo=open("output.txt","w+")
ls=["a","b","c"]
fo.writelines(ls)
fo.seek(0)
for line in fo:
print(line)
fo.close()
会输出abc
句柄.split(),读入数据字符串参数是分隔符,默认使用空格
句柄.write(' '.join(ls))按分隔符写入字符列表
csv数据格式
是国际通用的一二维数据存储格式,一般使用.csv作为扩展名
每行一个一维数据,采用逗号分隔,无空行
os标准库,与操作系统交互功能
os.path子库用于处理和操作文件路径
调用import os.path
normpath(文件名)统一用\\分割表示路径
realpath()返回相对路径
dirname()返回目录的名称
basename()返回文件名
exists()判断路径文件是否存在,返回布尔值
getmtime返回上一次修改的时间
getctime返回最初的创建时间
os.system(comand)可以调用其他程序
环境参数操作
os.chdie()修改当前程序操作的路径
getcwd()返回当前路径
getlogin()获取系统用户名称
cpu_count获取cpu数量
urandom(n)产生n个字节长度的随机字符串
以上就是本篇python极速入门指北的全部内容了。多的不敢说,至少过个二级应该还是足够了的——不过也就只够拿来应付考试了。
Py的优越性主要基于其庞大的开源第三方库和计算生态,之后视情况我大概还会继续整理一些和科学计算或者数据处理方向有关的笔记出来,当然关于具体的时间就不好预期了……毕竟日常摸鱼嘛23333
总之呢,就是如果对这方面有兴趣或者有需求的同学,可以以这篇速成语法为基础,自行去深入了解,毕竟——
程序和代码的世界要远比我们想象的更加丰富多彩!
领取专属 10元无门槛券
私享最新 技术干货