python基础知识-语法知识清单


Python学习知识清单

基础语法。

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


python基础知识-语法知识清单

列表的使用。

定义空列表。
<code>List = [ ]  /<code>
列表的长度
<code>len(list)/<code>
列表的组合
<code>list1 += list2/<code>
判断元素x是否位于列表
<code> if x in list:/<code>
列表的遍历(正序逆序,和附加索引的遍历)
<code>for x in list:(正序)

for x in list[::-1]:(逆序)/<code>
index(索引) value(值) enumerate(sequence, [start=0])
sequence – 一个序列、迭代器或其他支持迭代对象。
start –> 下标起始位置。
例如1:
<code>list = [1,2,3,4]
for index, value in enumerate(list):
print(index, value)/<code>
运行结果:
<code>list = [1,2,3,4]
for index, value in enumerate(list,start=2):
print(index, value)/<code>
例如2:
<code>list = [1,2,3,4]
for index, value in enumerate(list,start=2):
print(index, value)/<code>

运行结果:

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

字典的使用。

创建空字典
<code>dict = { }/<code>
判断元素是否在字典
<code>If key in dict:/<code>
计算字典元素个数
<code>len(dict)/<code>
添加元素到字典
<code>dict[key] = value/<code>
update方法
如果存在则更新,不存在则添加
<code>dict.update({key:value})/<code>
示例:
<code>>>> 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}/<code>
字典的get方法

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

key – 字典中要查找的键。

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

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

集合的使用

创建一个集合
<code>s = {x1,x2,x3……}

# (创建空集合)
s = set() /<code>
在集合中添加一个新的元素e;如果元素已经存在,则不添加
<code>s.add(e)/<code>
从集合中删除一个元素,如果元素不存在于集合中,则会产生一个KeyError错误
<code>s.remove(e)/<code>
从集合S中移除一个元素e;
<code>s.discard(e)/<code>
清空集合内的所有元素
<code>s.clear()/<code>
从集合S中删除一个随机元素;如果此集合为空,则引发KeyError异常
<code>s.pop()/<code>

计算元素个数

<code>len(s)/<code>
判断元素e是否存在于s
<code>If e in s:

If e not in s:/<code>

对于集合X,Y

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

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

<code>>>> X = {1,2,3,4,5,6}

>>> Y = {2,3,4,5}

>>> X > Y

True

>>> X >= Y

True

>>> X < Y

False/<code>
实战1:(校赛试题)

题目描述:

详见

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

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

示例代码:

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

题目描述

详见

OJ 2521: 文本修正

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

示例代码:

//s = input().split()

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

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

注:今年校赛解出两题且总时长60分钟以内就可以拿奖。

分支语句

基本形式

If ………:

elif ………:

elif ………:

else ………:

且——或关系

在A和B条件下
<code>If A and B:

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

If x (not) is s:/<code>

循环结构

循环结构和C语言类似。

<code>for in ……:

else:

while (条件):

else:/<code>
循环体加else语句,循环正常结束才执行的。

思考。循环了几次?

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

答案是6次

函数

定义函数的规则:

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

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

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

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

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

全局变量

global 保留字

1.位置参数传递

2.关键字传递

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

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

3.参数默认值

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

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

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

4.包裹传递/收集参数

可以传递任意个参数

5.解包裹

Python类与实例化

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

类的封装

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

类的方法

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

类的继承

定义父类

子类继承父类

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


分享到:


相關文章: