文章目录

  • 前言
  • 一、编写简单的程序
  • 1.1. 标识符及命名规则
  • 1.2. 变量与赋值语句
  • 1.3. 数值
  • 1.4. 字符串
  • 二、turtle画图
  • 2.1. 绘制爱心并书写文本
  • 2.2. 绘制幸运的四叶草
  • 2.3. 浪漫的玫瑰花
  • 三、课后习题
  • 总结

前言

本系列文章,主要是对学校开设的python课程进行总结,教科书为:python语言程序设计

一、编写简单的程序

1.1. 标识符及命名规则

在程序中需要为模块命名、为函数命名,也需要为变量命名,从专业术语上来说,所有的这些符号都称为“标识符”。

Python 语言对标识符的构成是有要求的:
每个标识符必须以字母或下画线“_ ”开头,后跟字母、数字或下画线的任意序列。

根据这个规则,x、num、num_1、numEggs、python123都是标识符,而 2x、a-b、num Eggs 都是不合法标识符。在命名的时候,可以采用“驼峰式”命名法。

有一些标识符是 Python 语言本身的一部分,这些特殊的标识符称为“关键字”或“保留字”,它们不能像普通标识符那样使用。如下查看关键字:

#查看关键字:
import keyword
print(keyword.kwlist)

1.2. 变量与赋值语句

  1. python语言中的变量是用来标识对象或引用对象的
  2. python是一种强类型语言,只支持该类型允许的运算操作
  3. 变量的赋值就是用一个变量来标识某个对象
  4. 链式赋值用于为多个变量同时赋予相同的值
  5. 解包赋值语句: python支持将序列数据类型解包为对应相同个数的变量
x = y = z = 100
print(x,y,z)
x = 100;y = 200
print(x,y)
a , b = "星","石"
print(a,b)
a,b = b,a
print(a,b)


#结果:
100 100 100
100 200
星 石
石 星

1.3. 数值

  1. 计算机程序存储和操作的信息通常称为数据

python程序设计课的教学反思_ci

python程序设计课的教学反思_ci_02

python程序设计课的教学反思_python_03

python程序设计课的教学反思_python_04

#内置的运算函数
print(divmod(234,5))
print(pow(2,4))
print(pow(2,4,3))

#math库中的函数
from  math import gcd,modf,factorial,pow,degrees,pi,radians,hypot
print(gcd(12,28)) #返回最大公因数
print(modf(3.4)) #返回小数、整数
print(factorial(5)) #返回阶乘
print(pow(2,3)) #返回x的y次幂
print(degrees(pi));print(radians(180))  #分别返回对应的角度值、弧度制
print(hypot(4,3)) #返回到原点的距离



#结果:
(46, 4)
16
1
4
(0.3999999999999999, 3.0)
120
8.0
180.0
3.141592653589793
5.0

1.4. 字符串

使用单引号或双引号引起来的内容,称为字符串类型数据(str),python语言的解释器会自动创建str类型对象实例

name = input("请输入您的姓名:")
introduce = input("介绍一下自己:")
zong = f"大家好!我的名字是{name},{introduce},请多关照"
print(zong)

m = int(input("输入月份:"))
months  = "janfebmaraprmayjunjulaugsepoctnovdec"
pos = (m-1) *3
print(months[pos:pos+3])

#结果:
请输入您的姓名:星石
介绍一下自己:星辉浸染的石岩,镌刻那古老的传说:万千生灵信仰的所在
大家好!我的名字是星石,星辉浸染的石岩,镌刻那古老的传说:万千生灵信仰的所在,请多关照
输入月份:3
mar

字符串处理与操作:

1. 字符串查找:
 find()、rfind()
 index() 、rindex()
 count()2. 字符串分割:
 split() 与rsplit()
 partition() 与rpartition()3. 字符串连接:
 join()

二、turtle画图

2.1. 绘制爱心并书写文本

import turtle

# 绘制爱心
turtle.pencolor('red')	# 画笔颜色
turtle.penup()	# 提笔
turtle.goto(0,100)
turtle.begin_fill()	# 开始填色
turtle.fillcolor('pink')	# 填充颜色
turtle.pendown()	# 落笔
turtle.left(135)
turtle.circle(70.7,180)
turtle.goto(0,-100)
turtle.left(90)
turtle.goto(100,0)
turtle.circle(70.7,180)
turtle.end_fill()	# 结束填色
turtle.hideturtle()	# 隐藏画笔形状
# 书写文本
turtle.pencolor("blue")
turtle.penup()
turtle.goto(0,-150)	# 将画笔移动到书写位置
turtle.write("星石传说", align="center")
turtle.done()# 停止绘图,但窗口不关闭

python程序设计课的教学反思_开发语言_05

2.2. 绘制幸运的四叶草

import turtle

turtle.fillcolor("pink") #设置填充颜色
turtle.begin_fill() #开始填色
#绘制花瓣#第一片叶子
turtle.circle(80,45); turtle.circle(20,180); turtle.left(180)
turtle.circle(20,180); turtle.circle(80,45) ;turtle.left(180)
turtle.circle(80, 45); turtle.circle(20,180) ;turtle.left(180)
turtle.circle(20,180) ;turtle.circle(80,45) ;turtle.left(180)
turtle.circle(80,45) ;turtle.circle(20,180) ;turtle.left(180)
turtle.circle(20,180); turtle.circle(80,45) ;turtle.left(180)
turtle.circle(80,45) ;turtle.circle(20,180) ;turtle.left(180)
turtle.circle(20,180) ;turtle.circle(80,45) ;turtle.left(180)
turtle.end_fill()	# 结束填色

# 绘制花枝
turtle.pencolor("green")
turtle.pensize(2)	#设置画笔宽度
turtle.penup()
turtle.goto(-25,-25) ;turtle.pendown(); turtle.right(90)
turtle.circle(-200,60)
turtle.hideturtle()	# 隐藏画笔形状


# 书写文本
turtle.penup()
turtle.goto(0, 100)
turtle.write('N号观察者!', font=('arial', 18, 'italic'))
turtle.done()	#停止绘图,但窗口不关闭

python程序设计课的教学反思_开发语言_06

2.3. 浪漫的玫瑰花

import turtle
#绘制玫瑰花
# 设置初始位置 turtle.penup()
turtle.goto(0,200) ;turtle.pendown()
# 绘制花朵
turtle.pensize(5)
turtle.fillcolor("red"); turtle.begin_fill()
turtle.circle(10,180) ;turtle.circle(20,120) ;turtle.left(40)
turtle.circle(60,45)


turtle.circle(20, 160); turtle.right(20)
turtle.forward(30)	# 前行
turtle.left(15)
turtle.circle(30,120); turtle.forward(20); turtle.left(30)
turtle.circle(80,60) ;turtle.circle(30, 150) ;turtle.right(30) ;turtle.forward(15)
turtle.circle(80, 90) ;turtle.left(20)
turtle.forward(40);turtle.right(160) ;turtle.forward(30) ;turtle.left(155)
turtle.circle(150,80) ;turtle.left(50)
turtle.circle(150,80) ;turtle.end_fill()
# 回到花朵底部
turtle.penup(); turtle.left(180)
turtle.circle(-150,80)	# 参数为负数代表反向画圆弧
turtle.pendown()
# 绘制叶子
turtle.setheading(-90)	# 设置画笔方向,负数表示反向
turtle.forward(30)
turtle.setheading(160) ;turtle.forward(20) ;turtle.left(40)
turtle.fillcolor("green"); turtle.begin_fill()
turtle.circle(-80,80); turtle.right(100)
turtle.circle(-80,80); turtle.end_fill()# 回到花枝主干
turtle.setheading(160)
turtle.backward(20)	# 后退
turtle.setheading(-90);turtle.forward(40)# 绘制叶子
turtle.setheading(45) ;turtle.forward(20) ;turtle.right(40)
turtle.fillcolor("green"); turtle.begin_fill() ;turtle.circle(80,80); turtle.left(100)
turtle.circle(80,80) ;turtle.end_fill()


# 回到花枝主干
turtle.setheading(45) ;turtle.backward(20)
turtle.setheading(-90) ;turtle.circle(-200,50)
turtle.hideturtle() 
# 书写文本
turtle.pencolor("purple")
turtle.penup()
turtle.goto(0, 100)
turtle.write('赠人玫瑰,手留余香', font=('arial', 18, 'italic'))
turtle.done()	#停止绘图,但窗口不关闭

python程序设计课的教学反思_ci_07

三、课后习题

python程序设计课的教学反思_ci_08

#1.

from math import atan,sqrt,pi,log,e
print(sqrt((pi)**2 +3))
print(log((2*pi)*sqrt(13+e)))
print(atan(log(pi+1,3))) #atan(),反正切函数值

#2.
v = 4/3 *pi*(2.11**3)
print(f"{v:.2f}")
s = pi*(16.2**2-9.4**2)
print(f"{s:.2f}")
tj = pi*66**2*24.2
print(f"{tj:.2f}")
bmj =2* pi*66**2 +2*pi*66*24.2
print(f"{bmj:.2f}")

3.
x1 = int(input("输入第一个点的横坐标:"))
x2 = int(input("输入第二个点的横坐标:"))
y1 = int(input("输入第一个点的纵坐标:"))
y2 = int(input("输入第二个点的纵坐标:"))
juli = sqrt((x1 - x2)**2 + (y1 - y2)**2)
print(f"{juli:.2f}")


#4.
url = "http://sports.sina.com.cn/"
print(url.count("t"))
print(url.find("com"))
print(url.replace(".","_"))
print(url[7:13],url[-12:-8])
print(url.upper())
print(len(url))
print(url+"index")


#5.
chinese = int(input("输入语文成绩:"))
Math = int(input("输入数学成绩:"))
english = int(input("输入英语成绩:"))
import pandas as pd
import numpy as np
cj = pd.Series([chinese,Math,english])
print(cj.sum(),cj.mean(),cj.max(),cj.min())
qz = pd.Series([0.5,0.3,0.2])  #或者:qz = [0.5,0.3,0.2]
print(np.dot(cj,qz))


#6.
sws = int(input("请输入一个三位数的整数:"))
bai = sws //100 ;shi = sws//10 %10 ; ge = sws%10
he = bai +shi+ge
print("和为:" , he)

结果如下图所示:

python程序设计课的教学反思_java_09

总结

本章简单预习了一下该本书的第二章。巩固了我之前的知识,也更加全面的了解了相关知识。