Python学习知识清单

基础语法。

Pyhton与C语言有一定的联系,但要注意一下两种思维方式的不同。

列表的使用。

定义空列表。
List = [ ]
列表的长度
len(list)
列表的组合
list1 += list2
判断元素x是否位于列表
 if x in list:
列表的遍历(正序逆序,和附加索引的遍历)
for x in list:(正序)for x in list[::-1]:(逆序)
index(索引) value(值) enumerate(sequence, [start=0])
sequence – 一个序列、迭代器或其他支持迭代对象。
start –> 下标起始位置。
例如1:
list = [1,2,3,4]
for index, value in enumerate(list):print(index, value)
运行结果:
0 1
1 2
2 3
3 4
例如2:
list = [1,2,3,4]
for index, value in enumerate(list,start=2):print(index, value)

运行结果:

2 1
3 2
4 3
5 4
求列表元素的最大最小值
max(list)
min(list)
求列表元素的平均值(前提列表元素都是数字)
sum(list) / len(list)
在列表末尾添加新的对象X
list.append(X)
统计某个元素X在列表中出现的次数
list.count(X)
#在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
list.extend()
从列表中找出某个值value第一个匹配项的索引位置
list.index(value)
将对象value插入列表某位置index
list.insert(index, value)
移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 list.pop([index = -1])
使用方法:
>>> list = [1,2,3,4]
>>> list.pop(1)
2
>>> list
[1, 3, 4]
移除列表中某个值value的第一个匹配项
list.remove(value)
反转列表中元素
list.reverse()
对原列表进行排序(正序逆序,关键字排序,这个自己百度)
list.sort( key=None,reverse=False)
清空列表
list.clear()
复制列表
list.copy()
删除列表元素
del list[index]

字典的使用。

创建空字典
dict = { }
判断元素是否在字典
If key in dict:
计算字典元素个数
len(dict)
添加元素到字典
dict[key] = value
update方法
如果存在则更新,不存在则添加
dict.update({key:value})
示例:
>>> d = {1:2,2:3}>>> d.update({3:4})>>> d{1: 2, 2: 3, 3: 4}>>> d.update({3:5})>>> d{1: 2, 2: 3, 3: 5}
字典的get方法

字典 get() 函数返回指定键的值,如果值不在字典中返回默认值。

key – 字典中要查找的键。

default – 如果指定键的值不存在时,返回该默认值值。

遍历字典
for key, value in dict.items():
字典键
dict.keys()
字典值
dict.values()
删除键
del dict[key]
删除字典
del dict
清空字典
dict.clear()

集合的使用

创建一个集合
s = {x1,x2,x3……}# (创建空集合)
s = set()
在集合中添加一个新的元素e;如果元素已经存在,则不添加
s.add(e)
从集合中删除一个元素,如果元素不存在于集合中,则会产生一个KeyError错误
s.remove(e)
从集合S中移除一个元素e;
s.discard(e)
清空集合内的所有元素
s.clear()
从集合S中删除一个随机元素;如果此集合为空,则引发KeyError异常
s.pop()
计算元素个数
len(s)
判断元素e是否存在于s
If e in s:If e not in s:

对于集合X,Y

差集
X – Y
并集
X | Y
交集
X & Y
对称差集(项在t或s中,但不会同时出现在二者中)
X ^ Y
判断集合的包含关系

例如:(X 包含 Y,Y ⊆ X )

>>> X = {1,2,3,4,5,6}>>> Y = {2,3,4,5}>>> X > YTrue>>> X >= YTrue>>> X < YFalse
实战1:(校赛试题)

题目描述:

详见

OJ 2522: 咕咕的的复复读读机机

大意:输入n和n个数字,求出现次数最多的数字。

示例代码:

n = int(input())
#输入n
L =list(map(int, input().split()))
#n个数字存入到L列表
print(max(set(L), key = L.count))
#求出出现次数最多的数字
实战2:(校赛试题)

题目描述

详见

OJ 2521: 文本修正

大意:读取一行字符串,如果是单词且是’henan’则变为’Henan’

示例代码:

//s = input().split()

现在的s是存储字符串的列表

s = input().split()
# 读取一行字符串,用空格分隔单词
for i in s:# 遍历字符串的单词if i == 'henan':# 满足条件,改变且输出print('Henan', end=' ')else:print(i, end=' ')

注:今年校赛解出两题且总时长60分钟以内就可以拿奖。
总时长是ACM累加标准。
但是比赛的时候未必能够直接发现这两道题目。省赛也即校赛题目集

分支语句

基本形式

If ………:

elif ………:

elif ………:

else ………:

且——或关系

在A和B条件下
If A and B:If A or B:
特殊用法(连续判断)
>>> X = 22
>>> if 20 <= X <= 30:print(X)
22
>>> 20 <= X <= 30
True
判断存在/不存在;是/不是
If x (not) in s:If x (not) is s:

循环结构

循环结构和C语言类似。

for in ……:else:while (条件):else:
循环体加else语句,循环正常结束才执行的。

思考。循环了几次?

>>> for i in range(6):i += 3

答案是6次

函数

定义函数的规则:

1、函数代码块以def关键字开头,后接函数表示符名称和圆括号。

2、任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。

3、函数的第一行语句可以选择性地使用文档字符串-用于存放函数说明

4、函数内容以冒号起始,并且缩进

5、return[表达式]结束函数,选择性地返回一个值给调用方,不带表达式的return相当于返回None。

全局变量

global 保留字

1.位置参数传递

2.关键字传递

关键字(keyword)传递是根据每个参数的名字传递参数。关键字并不用遵守位置的对应关系。

def fun(a,b,c)return a+b+c
print(f(1,c=3,b=2))

3.参数默认值

在定义函数的时候,使用形如c=10的方式,可以给参数赋予默认值(default)。如果该参数最终没有被传递值,将使用该默认值。

def f(a,b,c=10):return a+b+c
print(f(3,2))
print(f(3,2,1))

在第一次调用函数f时, 我们并没有足够的值,c没有被赋值,c将使用默认值10.第二次调用函数的时候,c被赋值为1,不再使用默认值。

4.包裹传递/收集参数

可以传递任意个参数

5.解包裹

Python类与实例化

面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但各自的数据可能不同。

类的封装

封装,顾名思义就是将内容封装到某个地方,以后再去调用被封装在某处的内容。

类的方法

在类地内部,使用 def 关键字来定义一个方法,与一般函数定义不同,类方法必须包含参数 self, 且为第一个参数,self 代表的是类的实例。

类的继承

定义父类

子类继承父类

(时间仓促,以上没有涉及的知识点请自己查找相关的资料)

将要自学的内容:

(需要的话再总结)

#字典的get方法

lambda函数用法

format 函数

reduce函数

filter 函数

time库

datetime 库

jieba 库 ->词频统计->词云

文件的使用

正则表达式

关于机器学习算法方面:

线性回归 逻辑回归

KNN(K – 最近邻算法)

支持向量机 朴素贝叶斯

决策树 K-均值算法

随机森林 降维算法

Gradient Boosting 和 AdaBoost 算法

史上最全的python基础语法知识清单!!!相关推荐

  1. 入门Python,看这一篇就够了,史上最全的Python基础语法知识清单!

    Python崇尚优美.清晰.简单,是一个优秀并广泛使用的脚本语言.Python可以应用于众多领域,如:数据分析.组件集成.网络服务.图像处理.数值计算和科学计算等众多领域. 目前业内几乎所有大中型互联 ...

  2. 史上最全的 python 基础知识汇总篇,没有比这再全面的了,建议收藏

    网友们有福了,小编终于把基础篇的内容全部涉略了一遍,这是一篇关于基础知识的汇总的文章,请朋友们收下,不用客气,不过文章篇幅肯能会有点长,耐心阅读吧 爬虫(七十)多进程multiprocess(六十一) ...

  3. python 完全面向对象_史上最全的Python面向对象知识点疏理

    原标题:史上最全的Python面向对象知识点疏理 面向对象技术简介 类: 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例.class 类变量:类变 ...

  4. 玩转Python必备:史上最全的Python库,【值得收藏,事半功倍】

    库名称     简介 Chardet字符编码探测器,可以自动检测文本.网页.xml的编码. colorama主要用来给文本添加各种颜色,并且非常简单易用. Prettytable主要用于在终端或浏览器 ...

  5. python bool 转vc int_史上最全的 Python 3 类型转换指南

    史上最全的 Python 3 类型转换指南-1.jpg (13.76 KB, 下载次数: 0) 2018-8-21 17:35 上传 int 支持转换为 int 类型的,仅有 float.str.by ...

  6. python高分书籍推荐_史上最全的Python书排行榜|你想知道的都在这里

    原标题:史上最全的Python书排行榜|你想知道的都在这里 感谢关注天善智能,走好数据之路↑↑↑ 欢迎关注天善智能,我们是专注于商业智能BI,大数据,数据分析领域的垂直社区,学习,问答.求职一站式搞定 ...

  7. 这可能是史上最全的Python算法集!

    来源 | CSDN(ID:CSDNnews ) 本文是一些机器人算法(特别是自动导航算法)的Python代码合集. 其主要特点有以下三点:选择了在实践中广泛应用的算法:依赖最少:容易阅读,容易理解每个 ...

  8. python优化算法工具包_这可能是史上最全的 Python 算法集(建议收藏)

    原标题:这可能是史上最全的 Python 算法集(建议收藏) 导读:本文是一些机器人算法(特别是自动导航算法)的Python代码合集.其主要特点有以下三点: 选择了在实践中广泛应用的算法: 依赖最少: ...

  9. python算法动画_这可能是史上最全的Python算法集!

    来源 | CSDN(ID:CSDNnews ) 本文是一些机器人算法(特别是自动导航算法)的Python代码合集. 其主要特点有以下三点:选择了在实践中广泛应用的算法:依赖最少:容易阅读,容易理解每个 ...

  10. 史上最全面的python学生管理系统教程(二)

    目录 序言 sqlite使用教程 python sqlite使用教程 数据库构造 学生信息表结构: 教师信息表结构: 课程成绩表结构: 教师添加课程: 学生表连接课程成绩表: 数据库语句了解 sqli ...

最新文章

  1. 干货 | 纽约大学陈溪: AlphaGo Zero技术演进的必然性(附PPT)
  2. eclipse中解决/**/多行注释代码后,格式变乱的问题
  3. 使用文本编辑器和jdk_JDK 14:记录,文本块等
  4. 怎么查看ingress的规则_有机合成中常见的基础理论规则
  5. Django - - - -视图层之视图函数(views)
  6. 《天天数学》连载24:一月二十四日
  7. java 性能调优,使用 async-profiler + FlameGraph火焰图 分析cup消耗热点代码
  8. Linux下Oracle中sqlplus上下键乱码问题
  9. 三角网导线平差实例_附合导线平差步骤
  10. 华清远见重庆分中心——前端阶段技术个人总结
  11. 10月18日~23日 产品
  12. 量子计算(二十):量子算法简介
  13. C#使用mouse_event函数模拟鼠标事件
  14. 网络工程Datacom-HCIA
  15. PHP知识点总结(一)
  16. 山东泰开集团 工业机器人_对接世界“工业4.0”泰开机器人 大步向智能制造领域拓展延伸...
  17. outlook打不开一直转圈怎么办
  18. snmp的团体名配置_SNMP的配置
  19. error Unable to authenticate, need: BASIC realm=“Sonatype Nexus Repository Manager“
  20. 洛谷P1059 [NOIP2006 普及组] 明明的随机数

热门文章

  1. Mono.Cecil简介与示例
  2. SQLServer 数据库无法重命名
  3. 清除COOKIES有什么好处
  4. 当三代测序遇到肿瘤基因组研究
  5. 线性变换(1)——不变子空间
  6. python图片合成的示例
  7. android手机电话铃声设置,怎么设置来电铃声-安卓手机小技巧:教你传输自己喜欢的歌曲铃声到系统铃声设置里...
  8. 【Windows】hiberfil.sys相关操作
  9. git Pull Request 是什么意思?
  10. 负折射率波导matlab,介质波导的数值模拟