实验一 Python基础及基本数据类型实验

实验一 Python基础及基本数据类型实验

前言:因为做学习笔记的缘故,接触了markdown,使用虽然方便,但不甚熟练,所以拿出以前学习的python的内容,学习markdown的同时,顺便复习python的相关内容。

一、实验目的

  1. 掌握Python数字类型的使用方法;
  2. 掌握将数学表达式转换成Python语言表达式的方法及注意事项;
  3. 掌握有关运算符号的特殊要求;
  4. 掌握输入、输出函数的使用方法;
  5. 掌握格式字符的使用方法;
  6. 掌握使用格式字符进行数制转换的方法。

二、实验内容

  1. 求表达式的值:

    (1)数学下列表达式的值,并输出。

      ①求x=1,y=2时, 1 3 [ x 2 + ( ∣ x − y ∣ − 1 ) ] \frac{1}{3}[x^2+(|x-y|-1)] 31[x2+(xy1)]

    • 代码如下:
    x, y = 1, 2
    f = (2 * x**2 + abs(x - y) - 1) / 3
    print(f)
    
    • 输出结果: 0.6666666666666666

      ②a=3,b=5,c=1时, − b + b 2 − 4 a c 2 a \frac{-b+\sqrt{b^2-4ac}}{2a} 2ab+b24ac
    • 代码如下:
    import math
    
    a, b, c = 3, 5, 1
    f = (-b + math.sqrt(b**2 - 4 * a * c)) / (2 * a)
    print(f)
    
    • 输出结果: -0.2324081207560018

      ③sin π 6 \frac{\pi}{6} 6π+e2
    • 代码如下:
    import math
    
    print(math.sin(math.pi / 6) + math.exp(2))
    
    • 输出结果: 7.88905609893065

    (2)问题1:编写程序求表达式“3.5+(9/2*(3.5+6.7)/2)%4”的结果,并输出。

    • 代码如下:
    f = 3.5 + (9 / 2 * (3.5 + 6.7) / 2) % 4
    print(f)
    
    • 输出结果:6.449999999999999

      问题2:在上面程序的基础上,将输出结果调整为如下形式:
      表达式"3.5 + (9/2*(3.5 + 6.7)/2)%4"的值为:计算结果(保留小数点后五位)

    • 代码如下:

    f = 3.5 + (9 / 2 * (3.5 + 6.7) / 2) % 4
    print('表达式"3.5 + (9/2*(3.5 + 6.7)/2)%4"的值为:{:.5f}'.format(f))
    
    • 输出结果:表达式"3.5 + (9/2*(3.5 + 6.7)/2)%4"的值为:6.45000
  2. 输出整数500的浮点数(小数点后两位)、二进制数、八进制数和十六进制数。

    • 代码如下:
    print("{0:.2f} {0:b} {0:o} {0:X}".format(500))
    
    • 输出结果:500.00 111110100 764 1F4
  3. python关系表达式实验
    (1)请编写一段程序判断输入的直角坐标系x,y点是否在第二象限或第四象限。在,则输出“该点在二象限或第四象限”。不在,则输出“该点不在第二象限或第四象限”。

    • 代码如下:
    x = input("请输入该点的横坐标:")
    y = input("请输入该点的纵坐标:")
    if (eval(x) < 0 and eval(y) > 0) or (eval(x) > 0 and eval(y) < 0):
        print("该点在第二象限或第四象限")
    else:
        print("该点不在第二象限或第四象限")  
    
    • 输出结果:
    请输入该点的横坐标:2
    请输入该点的纵坐标:3
    该点不在第二象限或第四象限
    

    (2)请编写一段程序判断x是否是3或者7的倍数,并输出判断结果。

    • 代码如下:
    num = eval(input("请输入需要判断的数:"))
    
    if num % 3 == 0 and num % 7 == 0:
        print("{}同时是3和7的倍数".format(num))
    elif num % 3 == 0:
        print("{}是3的倍数".format(num))
    elif num % 7 == 0:
        print("{}是7的倍数".format(num))
    else:
        print("{}既不是3的倍数也不是7的倍数".format(num))
    
    • 输出结果:
    请输入需要判断的数:5
    5既不是3的倍数也不是7的倍数
    

    (3)请编写一段程序判断x是否是一个大写字母,并输出判断结果。

    • 代码如下:
    letter = input("请输入一个字母:")
    if not letter.islower():
        print("{}是一个大写字母".format(letter))
    else:
        print("{}不是一个大写字母".format(letter))
    
    • 输出结果:
    请输入一个字母:a
    a不是一个大写字母
    
  4. 若a=3,b=4,c=5(使用键盘输入),要求编写程序,用input函数完成输入,并按以下要求的格式输出:
    x1 = a + b + c = ?
    x2 = a - b - c = ?

    • 代码如下:
    a = eval(input())
    b = eval(input())
    c = eval(input())
    
    print("x1 = a + b + c = {} + {} + {} = {}".format(a, b, c, a+b+c))
    print("x2 = a - b - c = {} - {} - {} = {}".format(a, b, c, a-b-c))
    
    • 输出结果:
    3
    2
    1
    x1 = a + b + c = 3 + 2 + 1 = 6
    x2 = a - b - c = 3 - 2 - 1 = 0
    
  5. 定义字符串“Hello,World!”,分别求:
    (1)输出定义的变量的类型
    (2)输出字符串的长度
    (3)判断字符串中字符是否全为小写字母,并输出结果
    (4)将大写字母转换为小写并输出字符串
    (5)将字符串各字符之间使用空格间隔并输出
    (6)输出一个长度为30的字符串,让“Hello , World!”处于居中位置,其余字符使用*号填充

    • 代码如下:
    str0 = "Hello,World!"
    
    # 输出定义的变量的类型
    print(type(str0))
    
    # 输出字符串的长度
      print(len(str0))
    
    # 判断字符串中字符是否全为小写字母,并输出结果
    if str0.islower():
        print("{}中字符全是小写字母".format(str0))
    else:
        print("{}中字符不全是小写字母".format(str0)) 
       
    # 将大写字母转换为小写并输出字符串    
    print(str0.lower())
    
    # 输出一个长度为30的字符串,让“Hello , World!”处于居中位置,其余字符使用*号填充
    print(str0.center(30, '*'))
    
    # 将字符串各字符之间使用空格间隔并输出
    outstr0 = " ".join(str0)
    print(outstr0)
    
    
    • 输出结果:
    <class 'str'>
    12
    Hello,World!中字符不全是小写字母
    hello,world!
    *********Hello,World!*********
    H e l l o , W o r l d !
    
  6. 已知三角形的三条边,编程计算三角形的面积并输出。
    提示:三角形的面积公式为s= h ( h − 1 ) ( h − b ) ( h − c ) \sqrt{h(h-1)(h-b)(h-c)} h(h1)(hb)(hc) 其中,a,b,c分别为三角形的三条边长,h为三角形周长的一半

    • 代码如下:
    import math
    
    # 已知三角形的三条边,编程计算三角形的面积并输出
    a = eval(input())
    b = eval(input())
    c = eval(input())
    h = (a + b + c) / 2
    s = math.sqrt(h * (h - a) * (h - b) * (h - c))
    print("三角形的面积为:",s)
    
    • 输出结果:
    3
    4
    5
    三角形的面积为: 6.0
    

附加题: 编写程序,把变量2018的每位数字提取出来并输出。
这一题的解法有很多种,在这里我们将变量2018由整型变量改为字符串,然后通过循环切片的方式,将每一位数字提取并输出。

  • 程序如下:
 num = 2018
 str_num = str(num)
 for i in str_num:
 	print(i)
  • 输出结果:
 2
 0
 1
 8
  • 8
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值