Python基础部分整理

Posted 聂光宗

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python基础部分整理相关的知识,希望对你有一定的参考价值。

python介绍
python创始人为:吉多·范罗苏姆(龟叔)。
1989年开发python
龟叔:2005——2012年就职谷歌
2013——至今就职Dropbox
python崇尚优美、清晰、简单

编译器:把程序全部编译成二进制之后进行运行,速度快
解释器:在执行程序时,一条一条解释成二进制,速度慢

python是解释型动态强类型定义语言

python优点:优雅 明确 简单
开发效率高
高级语言 可移植性 可扩展性 可嵌入性

python缺点:速度慢 代码不能加密 线程不能利用多CPU

ascii 65——90是A-Z
97——122是a-z
256
8bit代表1字节一个字符
unicode 16bit代表2字节一个字符 32bit代表品4字节一个字符
utf-8 英文8bit一个字节一个字符
欧洲 16bit两个字节一个字符
亚洲 24bit三个字节一个字符
gbk 英文 8bit一字节一字符
中文 16bit两字节一字符

8bit 1bytes
1024bytes 1kb
1024kb 1mb
1024mb 1gb
1024gb 1tb

-*- coding: utf-8 -*-

变量定义:字母数字下划线的任意组合,不能以数字开头,
具有可描述性,不能是python中的关键字
不能是中文,不能是拼音,不能太长
常量:全大写,python中没有常量

交互:
input接收的全是str
name = input(‘请输入姓名:‘)
print(name)

int型
32位机器: -2**31 - 2**31-1 -2147483648~2147483647
64位机器: -2**63 - 2**63-1 -9223372036854775808~9223372036854775807

long型:python3中不再有long型,只有int

str:单引号 双引号 三引号都行 除了
msg = ‘‘‘
123
456
789
‘‘‘
print(msg)

字符串只能进行相乘相加运算
a = ‘1‘
print(a*3)
print(a+a)

布尔值
print(3>5)
print(5<6)

格式化输出
%s %d


算术运算:
+ - * / % ** //返回商的整数部分

比较运算:
== != <> > < >= <=

赋值运算
= += -= *= /= %= **= //=

逻辑运算
and or not
a = 4
b = 5
print(a and b)
print(a or b)

()>not>and>or

print(3>4 or 4<3 and 1==1)
print(1 < 2 and 3 < 4 or 1>2 )
print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1)
print(1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8)
print(1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)
print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)

print(8 or 4)
print(0 and 3)
print(0 or 4 and 3 or 7 or 9 and 6)

x or y , x为真,值就是x,x为假,值是y;
x and y, x为真,值是y,x为假,值是x。

条件语句
if
if else
if elif
if elif else

while True or False

break 结束循环 执行循环体后面的语句
continue 结束本次循环,继续执行下次循环

while else 中途被break打断不执行else 否则执行else

数据类型:
数字 字符串 列表 元组 字典 集合

字符串操作方法
capitalize 首字母大写
center 居中
upper 全大写
lower 全小写
swapcase 大小写反转
title() 非字母隔开的每个单词首字母大写
startswith 判断以什么开头
endswith 判断以什么结尾
index 通过元素找索引 返回报错
find 通过元素找索引 返回-1
strip 去除前后端的空格换行制表符
split 以什么分割 默认空格分割
join list -----> str
‘分隔符‘.join(list)
replace 替代 replace(‘old‘,‘new‘)
len计算字符串长度
count计算字符串中某个字符出现的次数count(‘xxx‘)
格式化输出(三种方式):
msg = ‘我叫{},今年{},爱好{}‘.format(‘123‘, ‘456‘, ‘789‘)
msg2 = ‘我叫{0},今年{1},爱好{2},姓名{0}‘.format(‘123‘, ‘456‘, ‘789‘)
msg3 = ‘我叫{name},今年{age},爱好{hobby}‘.format(name=‘123‘, age=‘456‘, hobby=‘789‘)
str.isalnum() 字符串由字母数字组成
str.isalpha() 字符串由字母组成
str.isdigit() 字符串由数字组成

元组
只读列表 只能查询不能修改

列表list

insert(‘索引‘,‘增加元素‘)
append(元素) 最后增
extend(元素) 迭代增加

pop(索引) 按照位置删除
del list[:] 按照位置删除 可切片删除
remove(元素) 按照元素删除
clear() 清空列表

list[索引] 索引改
list[:] 切片改 迭代改

list[:]切片查
循环查

list其他操作:
len个数
count(‘元素‘) 计算元素在列表中出现个数
index(元素) 计算元素第一个出现在列表的索引位置
sort从小到大
sort(reverse = True)从大到小
reverse 列表反向存放


dict字典
key 可哈希不可变 数字 字符串 元组

setdefault 有键无值值为none 存在键值对不会更改和覆盖

del 删除
del dict[键] 根据键删除键值对
pop(key)
popitem() 随机删除 py3中默认删掉最后一个 返回值为元组
clear 清空字典

update 两个字典更新 有则覆盖无则添加

dict[键] 根据键查
get(键,‘默认返回值可改‘)

其他操作
dic = {1:‘2‘,2:‘3‘}
item = dic.items()
print(item,type(item))

keys = dic.keys()
print(keys,type(keys))

values = dic.values()
print(values,type(values))

字典循环
for key in dic:
print(key)

for item in dic.items():
print(item)

for k,v in dic.items():
print(k,v)


for循环
用户按照顺序循环可迭代对象的内容

enumerate枚举
li = [‘alex‘,‘银角‘,‘女神‘,‘egon‘,‘太白‘]
for i in enumerate(li):
print(i)

for index,name in enumerate(li,1):
print(index,name)

range 指定范围,生成指定数字
range(int可以增加步长)


集合
无序不重发,元素可哈希(不可变),集合本身不可哈希(可变)
特点:去重 关系测试


.add 普通增加
update 迭代着增加

remove(元素) 删除一个元素
pop 随机删除
clear 清空集合
del 删除

其他操作
& intersection 交集
| union 并集
- difference 差集
^ symmetric_difference 反交集
< issubset 子集
> issuperset 超集
frozenset 冻结 把集合变为不可变类型


深浅copy
浅copy:第一层变,第二层级更内层指向同一内存地址,变就变 切片是浅copy
deepcopy深copy:全部指向不同的内存地址,互相独立




python文件操作
第一种方式(必须要关闭文件f.close)
f = open(‘文件路径‘,encoding=‘utf-8‘,mode=‘模式,默认读(r)模式‘)
f.read() 通过文件句柄操作文件
f.close 关闭文件
第二种方式(无需太过关注是否要关闭文件)
with open(‘文件路径‘,encoding=‘utf-8‘,mode=‘模式,默认读(r)模式‘) as f:
f.read() 通过文件句柄操作文件

文件编码
文件打开方式的编码格式如果不指定,
默认是用当前操作系统环境下的编码方式去打开文件
windows------gbk
linux-------utf-8

文件打开模式
r 只读模式
w 只写模式
a 追加写模式

rb、wb、ab b模式是字节操作方式

r+ 读写
w+ 写读
a+ 写读

r+b 读写
w+b 写读
a+b 写读

文件的修改
打开原文件
创建新文件
把原文件内容修改之后的内容写入新文件
把原文件删除
把新文件重命名为原文件的名字







































































































































































































































































































以上是关于Python基础部分整理的主要内容,如果未能解决你的问题,请参考以下文章

零基础入门Python的路径

python 全栈 python基础前期基础整理

python 零基础学习大纲 - 整理

爆肝一周——PYTHON 算法基础

大牛整理最全Python零基础入门学习资料

爆肝整理两天出的学习引导,最详细的Python入门基础教程