深圳大学-数据科学导论实验-python编程基础

实验目的与要求

  1. 熟悉python基本语法。
  2. 掌握python编程基础。

实验环境

Windows
Pycharm

实验内容及过程

题目一

题目1:编写一个名为circle()的函数,它有一个名为radius的参数,对于输入的不同半径,通过circle函数计算圆的周长和面积。

代码
import math

def circle(radius):
    if radius < 0:
        print("半径不能为负数")
    else:
        C = 2 * math.pi * radius
        S = math.pi * radius * radius
        print("圆的周长为:", C)
        print("圆的面积为:", S)


radius = float(input("圆的半径为:"))
circle(radius)

题目二

题目2:提示用户输入成绩,判断是属于哪个水平,将结果打印到控制台。判断规则:60以下不及格,60分以上为及格,70分至80分为合格,80分至90分为良好,90分以上为优秀。

代码
score = float(input("成绩为: "))

if score < 60:
    print("成绩水平:不及格")
elif score < 70:
    print("成绩水平:及格")
elif score < 80:
    print("成绩水平:合格")
elif score < 90:
    print("成绩水平:良好")
else:
    print("成绩水平:优秀")

题目三

题目3:在控制台输入4组个人信息:姓名,年龄,籍贯。将信息存入字典中,将字典存入列表。遍历列表,打印每个人的信息,打印格式为:
1 张三 20 湖北
2 李四 22 湖南
3 王五 23 广州
4 刘六 18 江西

代码
emptylist=[]

for i in range(4):
    emptydict={}
    person_info=input()
    info_list=person_info.split()
    emptydict={
        "name":info_list[0],
        "age":info_list[1],
        "hometown":info_list[2]
    }
    emptylist.append(emptydict)

for i,person in enumerate(emptylist,start=1):
    print(f"{i} {person['name']} {person['age']} {person['hometown']}")

题目四

题目4:有两个磁盘文件A和B,各存放题3中的两组个人信息,要求把这两个文件中的信息合并(按字母顺序排列), 输出到一个新文件C中。注:运行以上程序前,你需要在脚本执行的目录下创建 test1.txt、test2.txt 文件

代码
with open("test1.txt","r") as filea:
    lista=filea.readlines()
with open("test2.txt","r") as fileb:
    listb=fileb.readlines()

merged_list=lista+listb
a=sorted(merged_list)

with open("result.txt","w") as filec:
    for line in a:
        filec.write(line)

test1.txt

张三 20 湖北
李四 22 湖南

test2.txt

王五 23 广州
刘六 18 江西

result.txt

张三 20 湖北
刘六 18 江西
李四 22 湖南
王五 23 广州

题目五

题目5:输出99乘法口诀;
输出随机干扰下的9
9乘法口诀:在每个数值上加上一个0~1的随机数,相乘,输出(要求输出原始整数和加入的随机数以及最终的结果)。例如:
(1+ 0.23)(1+0.04)= 1.28
(1+0.35)
(2+0.97) =4.32 …

代码
import random

for i in range(1, 10):
    for j in range(1, i+1):
        a=round(random.uniform(0,1),2)
        b=round(random.uniform(0,1),2)
        ans = (i+a) * (j+b)
        ans=round(ans,2)
        print(f"({j}+{b}) * ({i}+{a}) = {ans}",end=" ")
    print()  # 打印空行分隔每一行

题目六

题目6:定义一个字典。其中键是字符串,描述清单中的物品,值是一个整型值,说明玩家有多少该物品。例如,字典值{‘rope’: 1, ‘torch’: 6, ‘gold coin’: 42, ‘dagger’: 1, ‘arrow’: 12}。写一个名为 displayInventory()的函数,参数是字典,打印输出物品个数和物品名称,并统计物品总数量。(输出格式参考下图)
在这里插入图片描述

代码
dict={
    'rope': 1,
    'torch': 6,
    'gold coin': 42,
    'dagger': 1,
    'arrow': 12
}

def displayInventory(a):
    sum=0
    print("Inventory:")
    for item in dict:
        print(f"{dict[item]} {item}")
        sum=sum+dict[item]
    print("Total number of items:"+str(sum))

displayInventory(dict)

实验收获

掌握了python的基础语法

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值