青少年编程能力“python一级”大纲

NCT全国青少年考试说明

Posted by BY Jason Cao on March 30, 2020

NCT全国青少年编程能力“python一级”大纲

1 .程序基本编写方法

以IPO为主的程序编写方法

掌握“输入、处理、输出”程序编写方法,能够识别各环节,具备理解程序的基本能力

2. Python基本语法元素

缩进、注释、变量、命名和保留字等基本语法

掌握并熟练使用基本语法元素编写简单程序,具备利用基本语法元素进行问题表达的能力

缩进

所进的空格数时可变的,但是同一个代码块的语句必须包含相同的缩进空格数

if True:
	print("True")
else:
	print("False")
  print("False")  # 缩进不一致,运行错误

注释

# 单行注释
'''
多行注释
多行注释
'''
"""
多行注释
多行注释
"""

变量

Python有五个标准的数据类型:

  • Numbers(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Dictionary(字典)

在后文中会详细介绍

命名

在 Python 里,标识符由字母、数字、下划线组成。

在 Python 中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。

Python 中的标识符是区分大小写的。

保留字符

这些保留字不能用作常数或变数,或任何其他标识符名称

['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

3. 数字(Number)类型

整数类型、浮点数类型、真假无值及相关操作

掌握并熟练编写带有数字类型的程序,具备解决数字运算基本问题的能力

int(整数)

1,100,10000

float(浮点数)

1.0,2.5,10.08

bool(布尔)

True,False

4. 字符串(String)类型

字符串类型及其相关操作

掌握并熟练编写带有列表类型的程序,具备解决字符串处理基本问题的能力

word = '字符串'
sentence = "这是一个句子。"
paragraph = """这是一个段落,
可以由多行组成"""

字符串取值

python的字符串有2种取值顺序:

从左到右索引默认0开始的,最大范围是字符串长度少1

从右到左索引默认-1开始的,最大范围是字符串开头

可以使用 [头下标:尾下标] 来截取相应的字符串,包含头下标的字符,但不包含尾下标的字符

>>> s = 'python'
>>> s[1:5]
'ytho'

字符串连接

加号(+)是字符串连接运算符,星号(*)是重复操作

a = 'Hello'
b = 'World'
print(a + b)
print(a * 2)

结果为

HelloWorld
HelloHello

5. 列表(List)类型

列表类型及其相关操作

掌握并熟练编写带有列表类型的程序,具备解决列表处理基本问题的能力

列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套)。

列表取值

与字符串取值一样

>>> l = ['p','y','t','h','o','n']
>>> l[1:5]
['y','t','h','o']

列表连接

与字符串连接一样

a = [1, 2, 3]
b = [4, 5, 6]
print(a + b)
print(a * 2)

结果为

[1, 2, 3, 4, 5, 6]
[1, 2, 3, 1, 2, 3]

6. 类型转换

数字类型、字符串类型、列表类型之间的转换操作

理解类型的概念及类型转换的方法,具备表达程序类型与用户数据间对应关系的能力

下面列举几个考试用到的转换函数:

int(x)  # 将x转换为一个整数
float(x)  # 将x转换为一个浮点数
str(x)  # 将x转换为字符串
list(x)  # 将序列 s 转换为一个列表
eval(str)  # 用来计算在字符串中的有效Python表达式,并返回一个对象

7. 分支结构(条件语句)

if、if-else、if-elif-else等构成的分支结构

掌握并熟练编写带有分支结构的程序,具备利用分支结构解决实际问题的能力

if 判断条件1:
    执行语句……
elif 判断条件2:
    执行语句……
else:
    执行语句……

8. 循环结构

for、while、continue和break等构成的循环结构

掌握并熟练编写带有循环结构的程序,具备利用循环结构解决实际问题的能力

for循环

for循环实例1:

str = 'python'
for s in str:
	print(s)

for循环实例1结果:

p
y
t
h
o
n

for循环实例2:

list = [1, 2, 3, 4, 5]
for l in list:
	if l == 3:
		break  # break的作用就是跳出当前循环,不再进行循环
	else:
		print(l)

for循环实例2结果:

1
2

for循环实例3:

list = [1, 2, 3, 4, 5]
for x in range(len(list)):
	if list[x] == 3:
		continue  # continue的作用就是跳过循环内接下来的语句,进行下一次循环
	else:
		print(list[x])
	

for循环实例3结果:

1
2
4
5

while循环

while循环实例1:

i = 1
while i < 5:
	print(i)
	i += 1

while循环实例1结果:

1
2
3
4

while循环实例2:

list = [1, 2, 3, 4, 5]
i = 0
while i < len(list):
	print(list[i])
	i += 1

while循环实例2结果:

1
2
3
4
5

while循环实例3:

i = 0
while True:
	print(i)
	i += 1
	if i == 5:
		break

while循环实例3结果:

0
1
2
3
4

9. 异常处理

try-except构成的异常处理方法

掌握并熟练编写带有异常处理能力的程序,具备解决程序基本异常问题的能力

最基本的try-except-else结构

try:
    必须运行的代码
except:
    发生异常时执行的代码
else:
    没有异常时执行的代码

实例:

try:
    a = int(input("请输入一个整数:"))
except:
    print("输入错误")
else:
    print(a)

如果输入数字1,输入正确,会执行第6行代码,得到的结果是:

1

如果字符串abc,输入错误,会执行第4行代码,得到的结果是:

输入错误

10. 函数使用及标准函数

函数使用方法,10个左右Python标准函数

掌握并熟练使用基本输入输出和简单运算为主的标准函数,具备运用基本标准函数的能力

函数名称 函数 描述
输入函数 input([x]) 从控制台获得用户输入,并返回字符串
输出函数 print(x) 将x字符串在控制台打印输出
幂函数 pow(x,y) x的y次幂,与x**y相同
近似值函数 round(x,[n]) 对x四舍五入,保留n位小数
最大值函数 max(x1, x2, ···, xn) 返回x1, x2, ···, xn的最大值,n没有限定
最小值函数 min(x1, x2, ···, xn) 返回x1, x2, ···, xn的最小值,n没有限定
求和函数 sum(x1, x2, ···, xn) 返回x1, x2, ···, xn的算数和
长度函数 len() 返回对象(字符、列表、元组等)长度或项目个数
范围迭代函数 range(x) 返回的是一个可迭代对象(类型是对象)
表达式函数 eval(x) 执行一个字符串表达式x,并返回表达式的值
转换整数类型函数 int(x) 将x转换为整数,x可以是浮点数或字符串
转换浮点数类型函数 float(x) 将x转换为浮点数,x可以是浮点数或字符串
转换字符串类型函数 str(x) 将x转换为字符串
转换列表类型函数 list(x) 将x列表

11. Python标准库入门

基本的turtle库功能,基本的程序绘图方法

掌握并熟练使用turtle库的主要功能,具备通过程序绘制图形的基本能力

实例1:

import turtle as t    # 导入turtle包
t.down()              # 开始制图(默认初始方向为正右)
for i in range(0,5):  # 循环五次
	t.forward(100)    # 向前100像素
	t.right(72)       # 向右旋转72度
t.hideturtle()        # 隐藏画笔
t.done()              # 完成制图

实例1结果: 实例1

实例2:

import turtle as t    # 导入turtle包
t.down()              # 开始制图(默认初始方向为正右)
for i in range(6):    # 循环六次
	t.forward(100)    # 向前100像素
	t.right(-60)      # 向右旋转-60度,即向左旋转60度
	t.forward(100)    # 向前100像素
	t.right(120)      # 向右旋转120度
t.hidetutle()         # 隐藏画笔
t.done                # 完成制图

实例2结果: 实例2

12.Python开发环境使用

Python开发环境使用,不限于IDLE

熟练使用某一种Python开发环境,具备使用Python开发环境编写程序的能力

拓展

输入一串数字,以空格隔开,并返回一个数组

a = input("请输入:").split(" ")
print(a)

输入:

1 2 3 4

结果:

['1', '2', '3', '4']

输入一串数字,以逗号隔开,并返回一个数组

a = input("请输入:").split(",")
print(a)

输入:

1,2,3,4

结果:

['1', '2', '3', '4']