Python零基础先修课第一周两个单元

Python零基础先修课第一周

笔记

  1. 程序设计语言
    程序设计语言也叫编程语言,是计算机能够理解和识别操作的一种交互体系。
    最好的程序语言是人类的自然语言,但是自然语言存在表达歧义和文学色彩浓厚的问题。
  2. 程序设计语言的种类
    机器语言:01代码,CPU认识的语言
    汇编语言:在机器语言上增加了人类可读的助记符
    高级语言:像自然语言靠近的语言
  3. 编译和解释两种执行模式
    编译:将高级语言源代码转换成目标代码(机器语言),程序便可运行。
    好处:①目标代码执行速度更快②目标代码在相同操作系统上使用灵活
    编译执行的编程语言叫做静态语言,如C、Java语言等。
    解释:将源代码逐条转化成目标代码同时逐条运行,每次运行程序都需要源代码和解释器。
    好处:①便于维护源代码②良好的可移植性
    解释执行的编程语言叫做脚本语言,如PHP、JavaScript等
  4. Python语言
    是通用语言、脚本语言、开源语言、跨平台语言、多模型语言
  5. 程序的基本编写方法
    IPO模式:I:Input输入,程序的输入
    P:Process处理,程序的主要逻辑
    O:Output输出,程序的输出
  6. 程序编写的步骤
    分析问题:分析问题的计算部分
    确定问题:将计算部分划分为确定的IPO三部分
    设计算法:完成计算部分的核心处理方法
    编写程序:实现整个程序
    调试测试:使程序在各种情况下都能够正确运行
    升级维护:使程序长期正确运行,适应需求的微小变化
  7. 温度转换实例
  8. Initial-print模板
    初始变量:运算需要的初始值
    运算部分:根据算法实现
    结果输出:print()输出结果
  9. 蟒蛇绘制
  10. 函数库引用
    ① 第一种方式在程序头部增加:
    Import<库名>
    ② 第二种引用方式
    from<库名>import<函数名>
    from<库名>import*

课后练习

第一单元

#第一题
#字符串拼接。用户输入两个字符串,将它们组合后输出。
a1=input("请输入一个人的名字:")
a2=input("请输入一个国家名字:")
print("世界这么大,{}想去{}看看。".format(a1,a2))
#第二题
#整数序列求和。用户输入一个正整数N,计算从1到N(包含1和N)相加之后的结果
N=input("请输入一个正整数:")
t=0
for i in range(int(N)+1):
    t=t+i
print("1到N求和的结果为:{}".format(t))
#第三题
#九九乘法表输出,工整打印出常用的九九乘法表,格式不限
for i in range(1,10):
    for j in range(1,i+1):
        print("{}*{}={}".format(j,i,i*j),end=" ")
    print(" ")

在这里插入图片描述

#第四题
#阶乘计算,前n阶阶乘求和
t=1
s=0
N=input("请输入一个正整数:")
for i in range(1,int(N)+1):
    t=t*i
    s=s+t
print(t,s)
#第五题

'''猴子吃桃,猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个;
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半多一个。
到第五天早上想再吃的时候,见只剩下一个桃子了。请编写程序计算猴子一天共摘了多少桃子?'''
#自己的答案
n=1
for i in range(1,5):
    n=(n+1)*2
print(n)

#这个是给的答案,感觉有点问题,多了一个循环,改成正确的了
n=1
for i in range(5,1,-1):
    n=(n+1)<<1
print(n)
#第六题
#食谱输出。列出5种不同的食材,请输出它们可能组成的所有菜式名称
meal=["吮指原味鸡","脆皮炸鸡","安格斯厚牛堡","榴莲芝士披萨","肥宅快乐水"]
for i in range(0,5):
    for j in range(0,5):
        if i!=j:
            print("今天吃{}和{}".format(meal[i],meal[j]))
    print("")

在这里插入图片描述

#第七题
#五角星绘制,绘制一个红色的五角星图形
import turtle as t
t.fillcolor("red")
t.begin_fill()
while True:
    t.forward(300)
    t.right(144)
    if abs(t.pos())<1:
        break
t.end_fill()

在这里插入图片描述

#第八题
#太阳花的绘制
import turtle as t
t.pencolor("red")
t.fillcolor("yellow")
t.begin_fill()
while True:
    t.forward(200)
    t.right(170)
    if abs(t.pos())<1:
        break
t.end_fill()

在这里插入图片描述

#第九题
#螺旋线绘制,绘制一个螺旋线的图形
import turtle as t
t.pencolor("yellow")
t.pensize(2)
t.speed("fastest")
for i in range(500):
    t.forward(2*i)
    t.left(90)

在这里插入图片描述

#第十题
#彩色螺旋线的绘制,绘制一个彩色螺旋线
import turtle as t
t.speed("fastest")
t.pensize(2)
t.bgcolor("black")
colors=["pink","yellow","blue","purple"]
#t.tracer(False)
for i in range(600):
    t.forward(2*i)
    t.color(colors[i%4])
    t.left(91)

在这里插入图片描述

第二单元

#第一题
#练练手,温度转换与蟒蛇绘制
#温度转换程序
val=input("请输入带温度表示符号的温度值(例如:32C):")
if val[-1]in["C","c"]:
    f=1.8*float(val[0:-1])+32
    print("转换后的温度为:%.2fF"%f)
elif val[-1]in["F","f"]:
    c=(float(val[0:-1])-32)/1.8
    print("转换后的温度为:%.2fC"%c)
else:
    print("输入有误")
'''
'''
#pyhon蟒蛇绘制
import turtle
def drawsnake(rad,angle,len,neckrad):
    for i in range(len):
        turtle.circle(rad,angle)
        turtle.circle(-rad,angle)
    turtle.circle(rad,angle/2)
    turtle.fd(rad)
    turtle.circle(neckrad+1,180)
    turtle.fd(rad*2/3)
def main():
    turtle.setup(1300,800,0,0)
    pythonsize=30
    turtle.pensize(pythonsize)
    turtle.pencolor("blue")
    turtle.seth(-40)
    drawsnake(40,80,5,pythonsize/2)
main()
#第二题
#温度转换程序新编,采用eval()函数替换温度转换程序中的float()函数,观察运行结果。
val=input("请输入带温度表示符号的温度值(例如:32C):")
if val[-1]in["C","c"]:
    f=1.8*eval(val[0:-1])+32
    print("转换后的温度为:%.2fF"%f)
elif val[-1]in["F","f"]:
    c=(eval(val[0:-1])-32)/1.8
    print("转换后的温度为:%.2fC"%c)
else:
    print("输入有误")
#第三题
#彩色蟒蛇绘制,使Python蟒蛇各个部分采用不同的颜色
import turtle
def drawsnake(rad,angle,len,neckrad):
    colors=["red","pink","yellow","blue","purple"]
    for i in range(len):
        turtle.circle(rad,angle)
        turtle.circle(-rad,angle)
        turtle.color(colors[i%5])
    turtle.circle(rad,angle/2)
    turtle.fd(rad)
    turtle.circle(neckrad+1,180)
    turtle.fd(rad*2/3)
def main():
    turtle.setup(1300,800,0,0)
    pythonsize=30
    turtle.pensize(pythonsize)
    turtle.seth(-40)
    turtle.color("green")
    drawsnake(40,80,5,pythonsize/2)
main()

在这里插入图片描述

#第四题
#修改蟒蛇绘制中seth()函数的参数值
import turtle
def drawsnake(rad,angle,len,neckrad):
    for i in range(len):
        turtle.circle(rad,angle)
        turtle.circle(-rad,angle)
    turtle.circle(rad,angle/2)
    turtle.fd(rad)
    turtle.circle(neckrad+1,180)
    turtle.fd(rad*2/3)
def main():
    turtle.setup(1300,800,0,0)
    pythonsize=30
    turtle.pensize(pythonsize)
    turtle.pencolor("blue")
    turtle.seth(-50)
    drawsnake(40,80,5,pythonsize/2)
main()

在这里插入图片描述

#第五题
#绘制等边三角形,使用turtle库中turtle.fd()函数和turtle.seth()函数绘制一个等边三角形
import turtle as t
for i in range(1,4):
    t.fd(200)
    t.seth(i*120)

在这里插入图片描述

#第六题
#(一)中(7)(8)程序的含义
#答:两者类似,不同点是两者绘制时转过的角度不同,所需角度要能够使得终点与初始点重合。


我也很奇怪为什么学完基础课才开始学零基础先修课
可能是因为强迫症(?)
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值