【2023】某python语言程序设计跟学第一周内容
迪丽瓦拉
2024-05-27 02:37:04
0

本文说明:
案例内容为北理工python语言程序设计课程,如有不妥请联系!

目录

      • 温度转换案例:
        • 执行结果:
      • 代码解析:
      • 白话说明:
      • 举一反三:根据输入半径求圆周长或面积
        • 执行结果:

温度转换案例:

# TempConvert.py
TempStr = input("请输入带有符号的温度值:")if TempStr[-1] in ['F', 'f']:C = (eval(TempStr[0:-1]) - 32)/1.8print("转换后的温度是{:.2f}C".format(C))
elif TempStr[-1] in ['C', 'c']:F = 1.8*eval(TempStr[0:-1]) + 32print("转换后的温度是{:.2f}F".format(F))
else:print("输入格式错误")

执行结果:

请输入带有符号的温度值:80F
转换后的温度是26.67C进程已结束,退出代码0
——————————————————————————————
请输入带有符号的温度值:27C
转换后的温度是80.60F进程已结束,退出代码0

代码解析:

  • 代码高亮,对代码无影响

  • 代码缩进,缩进使用空格,长度一般为4个空格

  • 代码第一行,为注释,一句解释性文字(#开头代表单行注释)

    • ''' '''开头和结尾的中间部分内容为多行注释
  • 变量(TempStr、F、C),使用=赋值,右边内容计算结果作为左边变量的值

    • 命名:大小写字母、数字、下划线、中文等字符及组合
    • 注意:大小写敏感、首字符不能数字、不与保留字相同
    • 保留字:编程语言内部定义并保留使用的标识符(33个)
    • 以上代码(if、in、else、elif)均为保留字
  • 数据类型:供计算机程序理解的数据形式

    • 字符串:由一段单引号或双引号表示(“请输入带有符号的温度值:”、‘F’)均为字符串

    • 字符串的序号:正向递增序号反向递减序号

      -12-11-10 -9 -8  -7  -6 -5 -4 -3 -2 -1
      请  输  入 带  有  符  号  的 温 度  值  :
      0   1  2  3   4  5   6   7 8  9   10 11  
      
    • 使用[]获取字符串中一个或多个字符

      • 索引:返回字符串中单个字符([-1])
      • 切片:返回字符串中一段字符子串([1:3]或[0:-1])
    • 数字类型:整数和浮点数都是数字类型

      • 整数:数学中的整数,正数和负数(32)
      • 浮点数:数学中的实数,带有小数部分(1.8)
    • 列表类型:由0或多个数据组成的有序序列

      • 列表使用由[]表示,采用,分隔([‘F’, ‘f’])
      • 使用in判断一个元素是否在列表中
      • 第四行:意为-1的字符是否是F或f,是为True,否为False
  • 赋值语句:由赋值符号构成一行代码

    • 用来给变量赋于新的数据值,右侧结果值赋给变量(第5、8行)
    • 赋值语句右侧数据类型同时作用于变量(第2行)
  • 语句与函数:

    • 分支语句:由判断条件决定程序运行方向的语句
      • 使用if、elif、else构成条件判断分支结构
      • if后语句为Ture,执行:后语句(第4行)
    • 函数:根据输入的参数产生不同输出功能的过程(input、eval、print)
      • 类似数学中函数(第11行)
      • 函数采用方式使用(第五行)(TempStr[0:-1]为参数)
  • 输入与输出:

    • 输入:input从控制台获得用户输入的函数

    • 输出:print以字符形式向控制台输出结果的函数

      • 直接输出:print()(第11行)
      • print()的格式化:(第6行),意为C的值取小数点后两位
    • evel():去掉参数最外侧引号并执行余下语句函数(第5行)

      • 示例说明:
      >>>eval("1")
      1
      >>>eval("1+2")
      3
      >>>eval('"1+2"')
      "1+2"
      >>>eval('print("hello")')
      hello
      

白话说明:

  • 我输入了温度值为:80F
  • 取字符[0:-1]为80(取值为结尾序号前一位)
  • 根据公式计算:(80-32)/1.8=26.66666…
  • 根据{:.2f}C取值为小数点后两位四舍五入后为:26.67C
  • 符合执行结果中第一个示例

举一反三:根据输入半径求圆周长或面积

  • 输入圆的半径,求圆的面积或周长:
print("请输入结尾带有C或S的圆的半径,C代表求周长,S代表求面积")
u_input = input("请输入结尾带有C或者S的数字:")if u_input[-1] in ['C', 'c']:C = (eval(u_input[0:-1]) * 2 * 3.14)print("圆的周长为:{:.2f}".format(C))
elif u_input[-1] in ['S', 's']:S = (eval(u_input[0:-1])**2 * 3.14)print("圆的面积为:{:.2f}".format(S))
else:print("您的输入格式错误,请修改!")

执行结果:

# 求面积
请输入结尾带有C或S的圆的半径,C代表求周长,S代表求面积
请输入结尾带有C或者S的数字:3s
圆的面积为:28.26求周长
请输入结尾带有C或S的圆的半径,C代表求周长,S代表求面积
请输入结尾带有C或者S的数字:15.3C
圆的周长为:96.08

相关内容