少儿编程python
学习编程的规划
CSP_S等级考试
CSP-J全称Certified Software Professional Junior,即入门级。顾名思义是为学习编程的入门者而准备,参加对象以小学生和初中生居多。
CSP-S全称Certified Software Professional Senior,即提高组,是为已经有一定的编程能力基础的认证者而准备,参加对象以初、高中学生居多。
二者仅存在难度差异,组织形式一致,都各自有两轮认证,相当于初赛(第一轮:CSP-J1/CSP-S1)和复赛(第二轮CSP-J2/CSP-S2)。第一轮考察通用和实用的计算机科学知识,以笔试为主,部分省市以机试方式认证。第二轮为程序设计,须在计算机上调试完成。只有通过第一轮才有资格进入第二轮。
少儿编程等级考试,哪个更值得拿?
官网:https://www.noi.cn/
主办方:中国计算机学会(CCF)
考试内容:C++,分为CSP-J和CSP-S分别有两轮认证。
第一阶段:基础知识,数据结构(入门)
第二阶段:算法,上机操作(上机,编程)
考试时间:
一般是每年10月-11月考试
对升学有帮助:
中考,科技特长生,校内保送推荐排名有加分;高考,自主招生名额。CSP-J/S认证成绩优异者,可参加NOI省级选拔,省级选拔成绩优异者可参加NOI。
对于报考对象,CCF的建议是:CSP-J/S面向所有感兴趣的人士。如果孩子实力比较优秀 、能力较高,或之后有竞赛计划,可以尝试报考。
主办方:中国青少年宫协会
考试内容:
Scratchtu图形化编程 1-3级
Python编程 1-4级
C++语言编程1-5级
考试时间:
一般是每年4 、8 、12月份。
证书含金量:
通过考试后,将获得中国青少年宫协会颁发的青少年编程能力等级测评的官方权威证书。
该证书含金量高,是孩子成长中素质教育水平能力的证明。作为素质测评报告的重要参考依据,对于丰富孩子简历 、提升中高考升学等竞争力有重要影响。
主办方:蓝桥杯大赛组委会
官网:https://www.lanqiaoqingshao.cn/home
考试内容:
Scratch:共18级
Pothon:共18级
C++:共18级
考试时间:
2022年4 、5 、6月份
考试组别:
蓝桥等考是工业和信息化部人才交流中心举办的等级考试,一次缴费可包 3年考级,可从1级考到18级,一次缴费可随便考级。蓝桥等考的考试组别包括了三个组别,Scratch组、Python 组和 C++组。
含金量:
创办以来,因为在计算机领域的权威性与专业性,包括北大 、清华在内的1500余所院校的计算机专业学生都在参与蓝桥杯大赛。大赛获奖成绩在国际知名技术企业的招聘中都是重要的参考依据。
主办方:中国电子学会
网站:https://www.qceit.org.cn/
考试组别:
软件编程(C语言、Python、图形化)
考试内容:
1、编程类考试:软件编程(C语言)由编程题构成;软件编程(Python)和软件编程(图形化)由客观题和编程题构成。考试过程中将采用考试系统内嵌的编程环境实现编程过程及调试。
2、实操类考试:机器人技术、三维创意设计、无人机技术和电子技术由理论综合(采用在线考试的方式)和实际操作(采用相关硬件器材完成)两部分构成。
考试时间:
一般是每年3 、6 、9 、12月份
含金量:
官方认证的全国性等级考试,全面考察青少年软件编程的知识储备和实践能力,为青少年迈向人工智能应用领域奠定基础。孩子通过考试后,将颁发相应等级考试证书,为其升学 、出国留学提供软件编程能力和水平证明。
TypingClub: https://www.typingclub.com/
在站内搜索到的打字练习网站推荐里,TypingClub凭简洁美观的网站界面从一众打字练习网站中吸引了笔者的目光,其他很多打字练习网站页面像是时间停留在了十多年以前。TypingClub网站内的课程内容有趣,页面美观。
Typing Jungle课程让学习者能很快熟悉标准打字指法,指法提示可自行开或关。教学循序渐进,随着关卡的进行学习者逐步学会26字母小写大写、标点符号、数字、特殊符号的输入。
所有关卡五星通关后至少能有75WPM的速度,若想达成全部perfect score至少能有150WPM的速度。
TypingClub还支持包括中文全拼在内的16种语言打字练习,笔者打过几百关中文的课程,认为其有两点不足:1.有些中文的拼音有误2.关卡内顿号多数只能打\,打/算错。
TypingClub虽好,但是国内访问速度慢,所以很多人半天打不开网站。
Typing: https://www.typing.com/ 国外的 得魔法才能访问
Typing和TypingClub相似,实在用不了TypingClub可以尝试用Typing学习打字指法,同样有指法提示。网站视频加载有些慢可跳过直接学指法,课程设置上比TypingClub多了小键盘的教学,课程总量少。
Typing上还提供了HTML、CSS、JavaScript三种程序语言的打字练习。
Qwerty Learner
Qwerty Learner: https://qwerty.kaiyi.cool/
该网站没有指法教学,适合会盲打的人用,本身网站是为键盘工作者单词记忆与英语肌肉记忆锻炼设计的,单词输错就要重新输入。
站内含有四六级、考研、专四、专八、GMAT、GRE、IELTS、SAT、TOEFL等词库,还包括了人教版三年级至高中的单词、新概念英语、以及程序员常见英语单词库等。
TypeLit:https://www.typelit.io/
Typelit适合会盲打的人,首先选择一本古典小说,边看小说边打字。目前网站支持英语及其他几个小语种的小说,英语收录数量最多。
Tickeys找对打字的感觉
Tickeys: https://www.yingdev.com/projects/tickeys
官网:https://visualgo.net/zh/
Python是一种计算机程序设计语言,你可能已经听说过很多流行的编程语言,比如非常难学的C语言,非常流行的Java语言,适合网页编程的JavaScript等,Python就是其中之一
相对于其他编程语言,Python具有自己独特的优势,它可以用极少的代码完成任务。比如完成同一个任务,C语言要写1000行代码,Java需要100行,而Python可能只需要20行,所以说Python是一门非常高级的编程语言
1.web开发 :服务器端编程,具有丰富的Web开发框架,如Django和TurboGears,快速完成一个网站的开发和Web服务。
2.爬虫、数据分析、数据挖掘、机器学习。
3.科学计算:Python被广泛的运用于科学和数字计算中,例如生物信息学、物理、建筑、地理信息系统、图像可视化分析、生命科学等,常用numpy、SciPy、Biopython、SunPy等。
4.运维自动化:自动化处理大量的运维任务
5.测试自动化:编写为简单的实现脚本,运用在Selenium/lr中,实现自动化。
6.图形界面开发:Python可编写桌面图形用户界面,还可以扩展微软的Windows,常用Tk、GTK+、PyQt、win32等。
7.游戏开发:Python有很好的3D渲染库和游戏开发框架,有很多使用Python开发的游戏,如迪斯尼卡通城、黑暗之刃。常用PyGame、Pykyra等和一个PyWeek的比赛。
当然我们也可玩一下微信表情包的
import turtle # 导入库
turtle.TurtleScreen._RUNNING = True # 用来避免xx问题,具体什么问题我忘记了
pen = turtle.Pen()
pen.speed(10) # 设置笔速度
#画外圆
pen.pencolor() # 设置笔颜色
pen.penup() # 提笔
pen.goto(0, -100) # 移动位置
pen.pendown() # 放笔
pen.begin_fill() # 开始填充
pen.circle(100) # 画半径为100的圆
pen.fillcolor("#FFFF00") # 填充颜色
pen.end_fill() # 结束填充
#画眼睛
def draweye(x): # 画眼函数
pen.pencolor()
pen.penup()
pen.goto(x, 0)
pen.pendown()
pen.begin_fill()
pen.circle(25)
pen.fillcolor("#F8F8FF")
pen.end_fill()
pen.begin_fill()
pen.circle(15)
pen.fillcolor("#000000")
pen.end_fill()
draweye(-40) # 画左眼
draweye(40) # 画右眼
#画嘴巴
pen.right(60)
pen.penup()
pen.goto(-65, -30)
pen.pendown()
pen.circle(75, 120) # 勾股定理求出75
#将画笔移动中间
pen.penup()
pen.setheading(-90)
pen.goto(0, -20)
#结束画图
turtle.done()
import turtle
turtle.setup(800, 800)
turtle.speed(10)
turtle.color("yellow") # 画脸
turtle.begin_fill()
turtle.circle(200)
turtle.end_fill()
turtle.left(90) # 画嘴
turtle.fd(15)
turtle.right(90)
turtle.color("yellow")
turtle.circle(175, 270)
turtle.color("black")
turtle.circle(175, 180)
turtle.color("yellow")
turtle.penup()
turtle.circle(175, 270)
turtle.pendown()
turtle.color("yellow")
turtle.goto(-179, 258) # 左白眼
turtle.color("black")
turtle.fillcolor("white")
turtle.begin_fill()
turtle.circle(20, 25)
turtle.circle(-170, 50)
turtle.circle(13, 175)
turtle.circle(150, 38)
turtle.circle(280, 13)
turtle.end_fill()
turtle.goto(-179, 258)
turtle.seth(0)
turtle.color("black")
turtle.begin_fill()
turtle.circle(16)
turtle.end_fill()
turtle.color("yellow")
turtle.goto(26, 258)
turtle.color("black")
turtle.fillcolor("white") # 右白眼
turtle.begin_fill()
turtle.circle(20, 25)
turtle.circle(-170, 50)
turtle.circle(13, 175)
turtle.circle(150, 38)
turtle.circle(280, 13)
turtle.end_fill()
turtle.goto(26, 258) # 右黑眼坐标
turtle.seth(0)
turtle.fillcolor("black")
turtle.begin_fill()
turtle.circle(16)
turtle.end_fill()
turtle.pencolor("black") # 右眉毛
turtle.penup()
turtle.goto(60, 338) # 右眉毛尖坐标
turtle.pendown()
turtle.fillcolor("black")
turtle.begin_fill()
turtle.seth(25)
turtle.circle(-90, 34)
turtle.seth(-25)
turtle.circle(-150, 30)
turtle.left(155)
turtle.circle(80, 55)
turtle.circle(60, 80)
turtle.end_fill()
turtle.pencolor("black") # 左眉毛
turtle.penup()
turtle.goto(-53, 338)
turtle.pendown()
turtle.fillcolor("black")
turtle.begin_fill()
turtle.seth(155)
turtle.circle(90, 34)
turtle.seth(205)
turtle.circle(150, 30)
turtle.left(-155)
turtle.circle(-80, 55)
turtle.circle(-60, 80)
turtle.end_fill()
turtle.penup()
turtle.color("yellow")
turtle.fd(10)
turtle.done()
ircle(-60, 80)
turtle.end_fill()
turtle.penup()
turtle.color("yellow")
turtle.fd(10)
turtle.done()
见桌面上的python学习
第一种
打开
这里面只能一行一行的创建 没办法写太多行 所以我们就要用
保存 crrl+S
运行
设置字体大小
第二种
win+r
把我们保存的路径复制一下
内置函数之print()函数与注释
变量作用:用来临时存放数据
语法格式(重点):变量名 = 变量值
变量名相当于盒子 变量值相当于篮球 里面可以放篮球 也可以放纸巾 把篮球或是纸巾放在盒子里面叫做赋值
变量的定义:假设a = 0,a就是变量名字,0是变量的值,=号代表把0存入a变量当中,也叫做赋值,把a赋一个值0
number = 100
age =12
print(number) 打印变量number打印变量ageprint(age)
# print[输出函数]
# 语法格式:print(可以放内容)
print(100)
print(99.5)
# 99.5和100放在同一行
print(100,end=" ")
print(99.5)
#写代码在同一行
print(100);print(99.5)
#字符:A,B,C,D,。 [
#字符串:ABCD 小白老师
print("小白老师") #一定是英文的双引号或是单引号
print("小白老师")
# print("小白老师") #这是错误写法
#复制+粘贴 Ctrl +C Ctrl+V
Python中变量只能包含字母、数字和下划线,不能以数字开头,不能用Python的关键词,作为变量名
a = 0
A =40
b = 20
ab = 30
小白老师 = 100
print("小白老师")
print(小白老师)
print()
print(A)
print(ab)
#123_abc = 100 #不可以
a123 = 100
#/abc = 200
# 特殊符号不行: / 。 , 、 [] - = + # % $ & *
abc =200
# if is for 关键字
a = 200
b = 300
print(a)
print(b)
多个变量赋值
举例说明
整数类型相关:比如1到100000、-1到-10000…用int表示
定义整数类型变量
a=100
b=1000
c=-100
d=-2335
浮点数类型:即跟小数点相关比如1.5、0.5、10.8…用float表示
用bool表示,只有True和False两种值 True用1表示、False用0表示
# 数据类型:整数类型、浮点数类型、布尔类型、字符串类型
a = 1000 # 整数类型的变量
b = 3.14 # 浮点数类型的变量
c = True
d="小白老师" # 字符串类型的变量,双引号
e='小白' # 字符串类型的变量,单引号
# 字符串类型的变量,三引号
g ='''
数据类型:布尔类型数据类型:整数类型、布尔类型、字符串类型 浮点数类型
数据类型:布尔类型数据类型:整数类型、布尔类型、字符串类型 浮点数类型
'''
print(a)
print(b)
print(c)
print(d)
print(e)
print(g)
# 数据类型:整数类型(int)、浮点数类型(float)、布尔类型(bool)、字符串类型(string)
a = 1000 # 整数类型的变量
a123 = "1000"
b = 3.14 # 浮点数类型的变量
c = True
d="小白老师" # 字符串类型的变量,双引号
e='小白' # 字符串类型的变量,单引号
# 字符串类型的变量,三引号
g ='''
数据类型:布尔类型数据类型:整数类型、布尔类型、字符串类型 浮点数类型
数据类型:布尔类型数据类型:整数类型、布尔类型、字符串类型 浮点数类型
'''
# type() 函数是用于查看数据类型的
a_1 = type(a)
print(a,a_1)
# 也可以这样写
print(a123, type(a123))
print(b,type(b))
print(c,type(c))
print(d,type(d))
print(e,type(e))
print(g,type(g))
============================================ RESTART: D:/少儿python作品/自带IDE写的/lesson_4.py ===========================================
1000
1000
3.14
True
小白老师
小白
数据类型:布尔类型数据类型:整数类型、布尔类型、字符串类型 浮点数类型
数据类型:布尔类型数据类型:整数类型、布尔类型、字符串类型 浮点数类型
type()函数作用:用来查看内容是什么类型语法格式 (重点): type(内容)、如type(‘100’)
str()函数作用:用于将其他数据类型转换成字符串类型,能转换所有基本数据类型语法格式 (重点):str(数据类型) 如str(11),str(11.11)
# int 把整型转换成字符串并打印转换后的类型
print(str(11), type(str(11)))
# float 把浮点型转换成字符串并打印转换后的类型
print(str(11.11), type(str(11.11)))
# bool 把布尔型转换成字符串并打印转换后的类型
print(str(True), type(str(True)))
bool()函数作用:用来将字符串类型、浮点数类型、布尔类型的数据转成布尔类型
语法格式 (重点): int(其他数据类型)、如int(12.99)
#将字符串类型转成布尔类型
print(bool("199"))
#将浮点数类型转成布尔类型
print(bool(12))
#将布尔类型转成布尔类型
print(bool(True))
#有字符数据都会返回True
print(bool("0"))
#除了0返回False,其他数都返回True
print(bool(0))
#返回True
print(bool(-1))
字符串的截取的语法格式如下:变量[头下标:尾下标:步长]**
count()函数作用:用于计算某个字符串当中出现某个字符的次数语法格式(重点):字符串.count(字符)、如字符变量.count(字符)
举例:
a="abcabcabbcabcdabcd"
print(a.count("a")) #count()函数,用于计算某个字符出现多少次
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gI6yv5lP-1685696211547)(E:\少儿python\img\Snipaste_2023-05-28_22-32-44.png)]
内置函数之input0函数
海龟库
平面直角坐标系
举例一: (建立笔)
im port turtle
pen=turtle.Turtle 0
pen.pensize 20)
#设置画笔的宽度
pen.penco lor(“red”)#设置画笔的颜色
举例二:(无需建立笔)
import turtle as t
t.speed(10) #设置画笔的移动速度,0-10,最大是10,数字越大速度越慢
t.pensize(20) #设置画笔的宽度
t.pencolor(“red”) #设置画笔的颜色
t.fillcolor(“blue”)#绘制图形的填充颜色
t.begin_fill() #开始填充颜色
t.circle(50,steps=3) #画三角形,steps=3就是三角形
t.end_fill() #结束填充颜色
t.done() #代表画完了
#导入海龟库,建立别名叫t
import turtle as t
# pen = turtle.Turtle() # 建立一支笔
# 行走相关
# t.forward(100) # 往前走100像素
t.fd(100) #与上面代码一样 这是简写函数
# t.backward(200) #往后走100像素
t.bk(200) #与上面代码一样 这是简写函数
# 方向相关:两种方式
# 第一种方式
# t.left(90) #左转
t.lt(90)
t.fd(100)
# t.right(90) #右转
t.rt(90)
t.fd(200)
# 第二种方式:角度方向
t.setheading(90) #面向90度方向
t.bk(100)
t.setheading(180)
t.fd(100)
# t.setheading(270)与t.setheading(-90)方向一样
# t.setheading(90)与t.setheading(-270)方向一样
# t.setheading(180)与t.setheading(-180)方向一样
# t.setheading(-90) #缩写
t.seth(-90)
t.fd(400)
import turtle as t
# 设置画布
t.setup(800,400,0,0)
t.screensize(500,500,"yellow")
t.speed(0) #画笔的速度,范围0-10,越小的值速度越快
t.pensize(10) # 画笔大小
t.color("red") # 画笔的颜色
t.pencolor("blue") # 画笔的颜色
t.fd(100)
setheading(angle) 设置当前朝向为angle角度
home() 设置当前画笔位置为原点
dot(r) 绘制一个指定直径和颜色的点
turtle.hideturtle() # 隐藏箭头 隐藏画笔的turtle形状
turtle.showturtle() # 显示箭头 显示画笔的turtle形状
import turtle as t
t.speed(0) # 加速
t.fillcolor("red")
t.begin_fill() # 开始
t.fd(100) # 往前走100像素
t.lt(90) # 左转90度(逆时针) 箭头朝上
t.fd(100) # 往前走100像素
t.lt(90) # 左转90度(逆时针) 箭头朝左
t.fd(100) # 往前走100像素
t.lt(90) # 左转90度(逆时针) 箭头朝下
t.fd(100) # 往前走100像素
t.lt(90) # 左转90度(逆时针) 箭头朝右
t.end_fill() # 结束
# t.hideturtle() # 隐藏箭头 隐藏画笔的turtle形状
#上面的步骤就可以画出一个正方形
# 如果是长方形
# t.fd(150) # 往前走100像素
# t.lt(90) # 左转90度(逆时针) 箭头朝上
# t.fd(80) # 往前走100像素
# t.lt(90) # 左转90度(逆时针) 箭头朝左
# t.fd(150) # 往前走100像素
# t.lt(90) # 左转90度(逆时针) 箭头朝下
# t.fd(80) # 往前走100像素
# t.lt(90) # 左转90度(逆时针) 箭头朝右
# t.hideturtle() # 隐藏箭头 隐藏画笔的turtle形状
t.up() # 抬笔、t.pcnup() t.pu()
t.goto(-300,300) # 移到(x,y)指定的坐标位置
t.down() # 落笔、t.pendown()
t.fd(100) # 往前走100像素
t.seth(270) # 往下的方向270 、-90
t.fd(100) # 往前走100像素
t.seth(-180) #往左的方向180 、-180
t.fd(100)
t.seth(90) # 往上的方向90 、-270
t.fd(100) # 往前走100像素
t.rt(90) # 右转90度(顺时针)
t.fillcolor("yellow")
t.begin_fill()
t.fd(50) # 往前走50像素
t.rt(45) # 右转45度(顺时针)
t.fd(70) # 往前走70像素
t.rt(90) # 右转90度(顺时针)
t.fd(70) # 往前走70像素
t.rt(90) # 右转90度(顺时针)
t.fd(70) # 往前走70像素
t.rt(90) # 右转90度(顺时针)
t.fd(70) # 往前走70像素
# t.hideturtle() # 隐藏箭头 隐藏画笔的turtle形状
t.end_fill()
t.ht() # 隐藏箭头 隐藏画笔的turtle形状
t.st() # 显示箭头 显示画笔的turtle形状
#清空两种方式: clear()函数reset门)函数
# t.clear() # 清空窗口内容但是不清除状态
t.reset() # 清空窗口内容清除状态、回到原始样子
t.shape("turtle") # turtle的形状、circle 圆
t.fd(70) # 往前走70像素
t.stamp() # 印章
t.rt(90) # 右转90度(顺时针)
t.fd(70) # 往前走70像素
t.undo() # 撤销上一个动作
t.done() # 结束画画
python3.8以上版本才能用
import turtle as t
# 第一种办法
# t.speed(0) # 加速 1 最慢 0最快
# t.forward(150) # 往前走150像素
# t.left(90) # 左转90度(逆时针) 箭头朝上
# t.forward(80) # 往前走80像素
# t.left(90) # 左转90度(逆时针) 箭头朝上
# t.forward(150) # 往前走150像素
# t.left(90) # 左转90度(逆时针) 箭头朝上
# t.forward(80) # 往前走80像素
# t.left(90) # 左转90度(逆时针) 箭头朝上
# t.hideturtle() # 隐藏箭头 隐藏画笔的turtle形状
# t.done()
# 第二种办法(缩写)
# 画一个是长方形
# t.fd(150) # 往前走150像素
# t.lt(90) # 左转90度(逆时针) 箭头朝上
# t.fd(80) # 往前走80像素
# t.lt(90) # 左转90度(逆时针) 箭头朝左
# t.fd(150) # 往前走150像素
# t.lt(90) # 左转90度(逆时针) 箭头朝下
# t.fd(80) # 往前走100像素
# t.lt(90) # 左转90度(逆时针) 箭头朝右
# t.hideturtle() # 隐藏箭头 隐藏画笔的turtle形状
# t.done()
# 第三种办法 for
t.speed(1) # 加速 1 最慢 0最快
for i in range(2):
t.forward(150)
t.left(90)
t.forward(80)
t.left(90)
t.hideturtle() # 隐藏箭头 隐藏画笔的turtle形状
t.done()
外链图片转存中…(img-c2D4tPHn-1685696211562)]
[外链图片转存中…(img-KRCRJFBU-1685696211563)]
[外链图片转存中…(img-AtWJdQml-1685696211563)]
[外链图片转存中…(img-x4Ao2fcY-1685696211564)]
[外链图片转存中…(img-Zq8o5r1S-1685696211564)]
[外链图片转存中…(img-m69hOl5i-1685696211565)]
[外链图片转存中…(img-R0MlRVs5-1685696211565)]
[外链图片转存中…(img-G7Yqr0Le-1685696211565)]
import turtle as t
# 第一种办法
# t.speed(0) # 加速 1 最慢 0最快
# t.forward(150) # 往前走150像素
# t.left(90) # 左转90度(逆时针) 箭头朝上
# t.forward(80) # 往前走80像素
# t.left(90) # 左转90度(逆时针) 箭头朝上
# t.forward(150) # 往前走150像素
# t.left(90) # 左转90度(逆时针) 箭头朝上
# t.forward(80) # 往前走80像素
# t.left(90) # 左转90度(逆时针) 箭头朝上
# t.hideturtle() # 隐藏箭头 隐藏画笔的turtle形状
# t.done()
# 第二种办法(缩写)
# 画一个是长方形
# t.fd(150) # 往前走150像素
# t.lt(90) # 左转90度(逆时针) 箭头朝上
# t.fd(80) # 往前走80像素
# t.lt(90) # 左转90度(逆时针) 箭头朝左
# t.fd(150) # 往前走150像素
# t.lt(90) # 左转90度(逆时针) 箭头朝下
# t.fd(80) # 往前走100像素
# t.lt(90) # 左转90度(逆时针) 箭头朝右
# t.hideturtle() # 隐藏箭头 隐藏画笔的turtle形状
# t.done()
# 第三种办法 for
t.speed(1) # 加速 1 最慢 0最快
for i in range(2):
t.forward(150)
t.left(90)
t.forward(80)
t.left(90)
t.hideturtle() # 隐藏箭头 隐藏画笔的turtle形状
t.done()