• python入门及进阶学习记 lesson2


    python入门及进阶学习记 lesson2

    python入门及进阶学习记 lesson2

    course from https://www.icourse163.org/learn/BIT-1002058035

    # TempConvert.py
    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("输入有误")

    温度转换
    input 提示输出数据 类似java的Scanner
    if判定 数据val[-1]最后一位截取 是否 在 C与c 中进行包含
    有则: 进行数据计算并打印结果
    再进行 elif 判定 (与java中 else if一致) …
    最后else: 执行打印.


    接下来,阅读教程,并尝试用你的新Python编译器做一些简单的练习。

    If you’ve never programmed before, see BeginnersGuide/NonProgrammers for a list of suitable tutorials.

    如果你之前没有编程经验,读一下 [[BeginnersGuide/NonProgrammers], 里面有适合你的教程列表。

    If you have previous programming experience, consult BeginnersGuide/Programmers, which lists more advanced tutorials.

    如果你之前有编程经验,参考 BeginnersGuide/Programmers, 里面列出了更多高级教程。

    If English isn’t your first language, you might be more comfortable with a tutorial that’s been translated into your language. Consult python.org’s list of Non-English resources.

    如果英语不是你的母语,阅读翻译好的教程更适合你。参考 python.org’s 非英语资源列表.

    Most tutorials assume you know how to run a program on your computer.

    绝大部分教程都假设你掌握如何在你的电脑上运行程序。

    BeginnersGuide/Programmers 在lesson1中已经都测试过了,至于有没有什么太难懂的,在初学者教程中暂时还不算太难.


    代码整理

    这里有个比较有趣的题目: 表现出了Python语言的简洁与优雅

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

    画桌面文件

    import turtle
    from datetime import *
    # 抬起画笔, 向前运动一段距离放下
    def Skip(step):
    turtle.penup()
    turtle.forward(step)
    turtle.pendown()
    def mkHand(name,length):
    #注册Turtle形状,建立表针Turtle
    turtle.reset()
    Skip(-length*0.1)
    #开始记录多边形的顶点. 当前的乌龟位置是多边形的第一个顶点
    turtle.begin_poly()
    turtle.forward(length*1.1)
    #停止记录多边形的顶点,当前的乌龟位置是多边形的最后一个顶点,将与第一个顶点相连
    turtle.end_poly()
    #返回最后记录的多边形
    handForm = turtle.get_poly()
    turtle.register_shape(name,handForm)
    def Init():
    global secHand, minHand, hurHand, printer
    #重置Turtle指向北
    turtle.mode("logo")
    #建立三个表针Turtle并初始化
    mkHand("secHand",135)
    mkHand("minHand",125)
    mkHand("hurHand",90)
    secHand = turtle.Turtle()
    secHand.shape("secHand")
    minHand = turtle.Turtle()
    minHand.shape("minHand")
    hurHand = turtle.Turtle()
    hurHand.shape("hurHand")
    for hand in secHand, minHand, hurHand:
    hand.shapesize(1,1,3)
    hand.speed(0)
    #建立输出文字Turtle
    printer = turtle.Turtle()
    #隐藏画笔的turtle形状
    printer.hideturtle()
    printer.penup()
    def SetupClock(radius):
    #建立表的外框
    turtle.reset()
    turtle.pensize(7)
    turtle.pencolor("#ff5500")
    turtle.fillcolor("green")
    for i in range (60):
    Skip(radius)
    if i % 5 == 0:
    turtle.forward(20)
    Skip(-radius - 20)
    Skip(radius + 20)
    if i == 0:
    turtle.write(int(12),align="center",font=("Courier",14,"bold"))
    elif i == 30:
    Skip(25)
    turtle.write(int(i/5),align="center",font=("Courier",14,"bold"))
    Skip(-25)
    elif (i == 25 or i == 35):
    Skip(20)
    turtle.write(int(i/5),align="center",font=("Courier",14,"bold"))
    Skip(-20)
    else:
    turtle.write(int(i/5),align="center",font=("Courier",14,"bold"))
    Skip(-radius - 20)
    else:
    turtle.dot(5)
    Skip(-radius)
    turtle.right(6)
    def Week(t):
    week = ["星期一", "星期二", "星期三",
    "星期四", "星期五", "星期六", "星期日"]
    return week[t.weekday()]
    def Date(t):
    y = t.year
    m = t.month
    d = t.day
    return "%s-%d-%d" % (y,m,d)
    def Tick():
    #绘制表针的动态显示
    t = datetime.today()
    second = t.second + t.microsecond * 0.000001
    minute = t.minute + second / 60.0
    hour = t.hour + minute / 60.0
    secHand.setheading(6*second)
    minHand.setheading(6*minute)
    hurHand.setheading(30*hour)
    turtle.tracer(False)
    printer.forward(65)
    printer.write(Week(t),align="center",
    font=("Courier",14,"bold"))
    printer.back(130)
    printer.write(Date(t),align="center",
    font=("Courier",14,"bold"))
    printer.home()
    turtle.tracer(True)
    # 100ms后继续调用tick
    turtle.ontimer(Tick,100)
    def main():
    #打开/关闭龟动画,并为更新图纸设置延迟
    turtle.tracer(False)
    Init()
    SetupClock(160)
    turtle.tracer(True)
    Tick()
    turtle.mainloop()
    if __name__ == "__main__":
    main()

    画蟒蛇

    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)
    turtle.mainloop()
    main()

    画金字塔

    import turtle
    import time
    def drawGiza(size,speed,angle):
    turtle.speed("fastest")
    turtle.pensize(size)
    for x in range(100):
    turtle.forward(speed*x)
    turtle.left(angle)
    time.sleep(3)
    def main():
    drawGiza(2,4,90)
    turtle.mainloop()
    main()

    函数库的引用:
    模块索引https://docs.python.org/zh-cn/3/py-modindex.html
    函数库调用方式

    两种不同的调用方式的区别
    第一种 import 需要写原库名.方法
    使用第二种 from 库名 import 某方法(模块) 不需要写库名
    引入库函数设置别名

    类型的概念:

    • 类型是编程语言对数据的一种划分.

    • Python语言的类型:
      数字类型,字符串类型,元组类型,列表类型,文件类型,字典类型

    数字类型:

    • 与数学中的整数概念一致,没有取值范围限制

    • pow(x,y) 函数: 计算

    Alt text

    Alt text

    Alt text

    Alt text

    Alt text

    Alt text

    Alt text

    Alt text

    Alt text

    Alt text

    Alt text

    Alt text

    # 求平均数
    num1 = input("The first number is :")
    num2 = input("The second number is : ")
    avg_num = (float(num1) + float(num2)) / 2
    print("The average number is %f" % avg_num)

    Alt text

  • 相关阅读:
    junit测试时,出现java.lang.IllegalStateException: Failed to load ApplicationContext
    Mybatis 3 返回布尔值,需要注意的地方
    mybatis sql in 查询
    在HTML中如何隐藏某段文字具体该怎么实现
    SpringMVC存取Session的两种方法
    spring mvc 使用session
    mybatis入门例子
    Android自定义GifView显示gif动画
    [wxWidgets]_[0基础]_[经常更新进度条程序]
    ASP.NET验证控件
  • 原文地址:https://www.cnblogs.com/ukzq/p/15670464.html
Copyright © 2020-2023  润新知