【Python学习篇】Python实验小练习(三)_输出整数500的浮点数(保留两位小数)、二进制数、八进制数和十六进制数。

个人名片:

🎓作者简介:一名热衷于学习的学生
🌐个人主页:妄北y

📞个人QQ:2061314755

💌个人邮箱:[mailto:2061314755@qq.com]
📱个人微信:Vir2021GKBS
🖋️本文为妄北y原创佳作,独家首发于CSDN🎊🎊🎊
💡座右铭:改造世界固然伟大,但改造自我更为可贵。

专栏导航:

妄北y系列专栏导航:

物联网嵌入式开发项目:大学期间的毕业设计,课程设计,大创项目,各种竞赛项目,全面覆盖了需求分析、方案设计、实施与调试、成果展示以及总结反思等关键环节。📚💼💡

QT基础入门学习:对QT的基础图形化页面设计进行了一个简单的学习与认识,利用QT的基础知识进行了翻金币小游戏的制作。🛠️🔧💭

Linux基础编程:初步认识什么是Linux,为什么学Linux,安装环境,进行基础命令的学习,入门级的shell编程。🍻🎉🖥️

Linux应用开发基础开发:分享Linux的基本概念、命令行操作、文件系统、用户和权限管理等,网络编程相关知识,TCP/IP 协议、套接字(Socket)编程等,可以实现网络通信功能。💐📝💡

Linux驱动开发:Linux驱动开发是Linux系统不可或缺的组成部分,它专注于编写特殊的程序——驱动程序。这些程序承载着硬件设备的详细信息,并扮演着操作系统与硬件间沟通的桥梁角色。驱动开发的核心使命在于确保硬件设备在Linux系统上顺畅运作,同时实现与操作系统的无缝集成,为用户带来流畅稳定的体验。🚀🔧💻

Linux项目开发:Linux基础知识的实践,做项目是最锻炼能力的一个学习方法,这里我们会学习到一些简单基础的项目开发与应用,而且都是毕业设计级别的哦。🤸🌱🚀

非常期待与您一同在这个广阔的互联网天地里,携手探索知识的海洋,互相学习,共同进步。🌐💫🌱 熠熠星光,照亮我们的成长之路

✨✨ **欢迎订阅本专栏,对专栏内容任何问题都可以随时联系博主,共同书写属于我们的精彩篇章!**✨✨

文章介绍:

📚本篇文章将深入剖析Python基础入门学习的精髓与奥秘,与您一同分享相关知识!🎉🎉🎉

若您觉得文章尚可入目,期待您能慷慨地送上点赞、收藏与分享的三连支持!您的每一份鼓励,都是我创作路上源源不断的动力。让我们携手并进,共同奔跑,期待在顶峰相见的那一天,共庆辉煌!🚀🚀🚀

🙏衷心感谢大家的点赞👍、收藏⭐和评论✍️,您的支持是我前进的动力!

目录:

一、实验目的:

二、实验环境

三、实验内容:

四、实验步骤与结果:

4.1 输出整数500的浮点数、二进制数、八进制数和十六进制数。

2.2 编写程序求多项式ax3+bx2+c的值(a=2,b=3,c=4,x=1.414)

2.3 编写程序求下列复合赋值后a的值,并输出a=2;a+=a;a-=2;a=a*2+3;a//=a+a;

2.4 编写程序求表达式3.5+(9/2*(3.5+6.7)/2)%4

2.5  a=3,b=4a,c=5,x=1.414,y=1,732,z=2.712,编写程序,要求按以下格式输出 a=3 b=4 c=5 x=1.414 y=1.732 z=2.712

2.6 编写程序,将十进制数20、64、127分别转换为八进制数和十六进制数,并输出

2.7 编写程序,计算并输出1/3的小数值,保留6位小数且带%(如:0;333333%)

扩展

整数的拆分。从键盘任意输入一个3位正整数num,拆分出个位、十位和百位数字,并输出。

五、总结:

5.1 实验过程中的问题及解决方法:

1.使用 float() 函数时的问题

2.使用 bin(), oct(), 和 hex() 函数时的问题

5.2 实验收获

1.转换类型的深入理解

2. 错误处理的重要性

3. 格式化输出的技巧

4. 扩展应用的可能性

5. 编程实践和问题解决能力的提升


一、实验目的:

(1)掌握python数字类型的使用方法

(2)掌握将数学表达式转换成python语言表达式的方法及注意

(3)掌握有关运算符号的特殊要求

(4)掌握输入、输出函数的使用方法

(5)掌握格式字符串的使用方法

(6)掌握使用格式字符串进行数制转换的方法

二、实验环境

内部预装Windows 7或更高版本的操作系统,并集成安装了Python 3.7的IDLE开发环境,为您提供便捷高效的编程体验。

三、实验内容:

1、输出整数500的浮点数、二进制数、八进制数和十六进制数。

2、编写程序求多项式ax3+bx2+c的值(a=2,b=3,c=4,x=1.414)

3、编写程序求下列复合赋值后a的值,并输出a=2;a+=a;a-=2;a=a*2+3;a//=a+a;

4、编写程序求表达式3.5+(9/2*(3.5+6.7)/2)%4

5、a=3,b=4a,c=5,x=1.414,y=1,732,z=2.712,编写程序,要求按以下格式输出 a=3 b=4 c=5 x=1.414 y=1.732 z=2.712

6、编写程序,将十进制数20、64、127分别转换为八进制数和十六进制数,并输出

7、编写程序,计算并输出1/3的小数值,保留6位小数且带%(如:0;333333%)

扩展:整数的拆分。从键盘任意输入一个3位正整数num,拆分出个位、十位和百位数字,并输出。

四、实验步骤与结果:

1. 新建文件夹并命名。

2. 安装 Python 解释器Python 3.7 集成开发环境IDLE,并进入IDLE。

3. 依次执行编好的程序实验内容源程序,分别命名为sy1_1.py - sy1_7.py 并保存至已建好的文件夹中。

4. 检查已输入的程序是否有错(包括输入时输错的和编程中的错误),如发现有错,及时改正。

5. 运行程序并分析运行结果是否合理。在运行时要注意当输入不同的数据时所得结果是否正确,应测试两组以上数据,分别检查在不同情况下结果是否正确。

4.1 输出整数500的浮点数、二进制数、八进制数和十六进制数。

在Python中,可以使用内置的**float()bin()oct(), 和 hex()** 函数来将整数转换为浮点数、二进制数、八进制数和十六进制数。下面是如何实现这一点的示例代码:

# 整数500
integer_value = 500

# 转换为浮点数
float_value = float(integer_value)
print(f"浮点数: {float_value}")

# 转换为二进制数
binary_value = bin(integer_value)
print(f"二进制数: {binary_value}")

# 转换为八进制数
octal_value = oct(integer_value)
print(f"八进制数: {octal_value}")

# 转换为十六进制数
hexadecimal_value = hex(integer_value)
print(f"十六进制数: {hexadecimal_value}")

当你运行这段代码时,它会输出以下结果:

注意:bin()oct(), 和 hex() 函数返回的字符串是以"0b", “0o”, 和 "0x"为前缀的,分别表示二进制、八进制和十六进制数。如果你想要去除这些前缀,可以使用字符串切片或lstrip()方法:

# 整数500
integer_value = 500

# 转换为浮点数
float_value = float(integer_value)
print(f"浮点数: {float_value}")

# 转换为二进制数并去除前缀
binary_value = bin(integer_value)[2:]
print(f"去除前缀的二进制数: {binary_value}")

# 转换为八进制数并去除前缀
octal_value = oct(integer_value)[2:]
print(f"去除前缀的八进制数: {octal_value}")

# 转换为十六进制数并去除前缀
hexadecimal_value = hex(integer_value)[2:]
print(f"去除前缀的十六进制数: {hexadecimal_value}")

当你运行这段代码时,它会输出以下结果:

2.2 编写程序求多项式ax3+bx2+c的值(a=2,b=3,c=4,x=1.414)

以下是一个简单的Python程序,用于计算多项式 ax^3 + bx^2 + c 的值,其中 a=2, b=3, c=4, x=1.414

这个程序首先定义了多项式中的系数和x的值,然后使用这些值来计算多项式的值,并将结果存储在result变量中。最后,它使用print函数输出计算结果。

# 定义多项式中的系数和x的值  
a = 2  
b = 3  
c = 4  
x = 1.414  
  
# 计算多项式的值  
result = a * x**3 + b * x**2 + c  
  
# 输出结果  
print(f"多项式的值为:{result}")

当你运行这段代码时,它会输出以下结果:

2.3 编写程序求下列复合赋值后a的值,并输出a=2;a+=a;a-=2;a=a*2+3;a//=a+a;

在Python中,复合赋值语句如 **+=-=*=//=**等可以简化变量的赋值操作。这些复合赋值语句分别表示加法赋值、减法赋值、乘法赋值和整除赋值。

给定的复合赋值语句序列如下:

a = 2;

a += a;

a -= 2;

a = a * 2 + 3;

a //= a + a;

下面是Python实现这些复合赋值语句并输出最终a的值的代码:

# 初始化变量a  
a = 2  
  
# 执行复合赋值语句  
a += a  # a = a + a  
a -= 2  # a = a - 2  
a = a * 2 + 3  # a = a * 2 + 3  
a //= a + a  # a = a // (a + a)  
  
# 输出变量a的值  
print(f"最终a的值为:{a}")

当你运行这段代码时,它会输出以下结果:

当你运行这段代码时,它会按照给定的复合赋值语句序列执行,并输出最终a的值。

**注意:**最后一个复合赋值语句 a //= a + a 使用了整除赋值(//=),它表示 a 会被更新为其自身除以 a + a 的商(整数部分)。这可能会导致a的值变成一个较小的整数,具体取决于之前步骤中a的值。

2.4 编写程序求表达式3.5+(9/2*(3.5+6.7)/2)%4

这段代码首先计算括号内的部分 (3.5 + 6.7),然后将结果乘以 9 / 2,接着将结果再除以 2,最后对结果进行取模运算 % 4。最后,将上述结果加到 3.5 上,并打印出最终的结果。

result = 3.5 + (9 / 2 * (3.5 + 6.7) / 2) % 4  
print(result)

当你运行这段代码时,它会输出以下结果:

2.5  a=3,b=4a,c=5,x=1.414,y=1,732,z=2.712,编写程序,要求按以下格式输出 a=3 b=4 c=5 x=1.414 y=1.732 z=2.712

在Python中,你可以创建一个程序来声明这些变量并按照指定的格式输出它们的值。以下是一个简单的实现:

# 定义变量  
a = 3  
b = 4 * a  
c = 5  
x = 1.414  
y = 1.732  
z = 2.712  
  
# 格式化输出  
print(f"a={a:<10}b={b:<10}c={c:<10}")  
print(f"x={x:<10.4f}y={y:<10.4f}z={z:<10.4f}")

在这个程序中,我们使用了f-string(格式化字符串文字)来定义输出格式。< 是一个对齐修饰符,它表示左对齐,10 定义了字段宽度为10个字符。对于浮点数 xy, 和 z,我们使用了 .4f 来指定输出小数点后四位。

当你运行这段代码时,它会输出以下结果:

**注意:**由于浮点数的小数位数和表示可能会因计算机和Python解释器的实现而略有不同,输出可能会有些许差异,但通常这些差异是微不足道的,并且不影响结果的正确性。如果你需要确保输出的小数位数完全一致,你可以使用 round 函数来四舍五入到指定的小数位数。

2.6 编写程序,将十进制数20、64、127分别转换为八进制数和十六进制数,并输出

在Python中,你可以使用内置的oct()hex()函数来将十进制数转换为八进制和十六进制数。以下是一个简单的程序,它将十进制数20、64、127转换为八进制和十六进制数,并输出它们:

# 定义要转换的十进制数  
decimal_numbers = [20, 64, 127]  
  
# 遍历十进制数列表  
for decimal in decimal_numbers:  
    # 转换为八进制并移除前面的'0o'  
    octal = oct(decimal)[2:]  
    # 转换为十六进制并移除前面的'0x'  
    hexadecimal = hex(decimal)[2:]  
      
    # 输出结果  
    print(f"十进制数 {decimal} 转换为八进制是 {octal}, 转换为十六进制是 {hexadecimal}")

在输出中,oct()函数返回的字符串以’0o’开头,表示这是一个八进制数;hex()函数返回的字符串以’0x’开头,表示这是一个十六进制数。我们使用了切片操作[2:]来移除这些前缀,只保留转换后的数字部分。

当你运行这段代码时,它会输出以下结果:

2.7 编写程序,计算并输出1/3的小数值,保留6位小数且带%(如:0;333333%)

在Python中,你可以使用格式化字符串来得到带有固定小数位数和百分比的输出。以下是一个简单的程序,计算1/3的小数值,并保留6位小数且带百分号:

# 计算1/3的小数值  
decimal_value = 1 / 3  
  
# 将小数转换为百分比,并保留6位小数  
percentage = "{:.6%}".format(decimal_value)  
  
# 输出结果  
print(percentage)

当你运行这段代码时,它会输出以下结果:

扩展

整数的拆分。从键盘任意输入一个3位正整数num,拆分出个位、十位和百位数字,并输出。

使用Python来实现这个任务。以下是一个简单的程序,它接受一个3位正整数作为输入,然后拆分出个位、十位和百位数字,并输出它们。

# 获取用户输入的3位正整数  
num = int(input("请输入一个3位正整数:"))  
  
# 确保输入的是3位正整数  
if 100 <= num <= 999:  
    # 拆分数字  
    units = num % 10  # 个位数字  
    tens = (num // 10) % 10  # 十位数字  
    hundreds = num // 100  # 百位数字  
      
    # 输出结果  
    print(f"个位数字是:{units}")  
    print(f"十位数字是:{tens}")  
    print(f"百位数字是:{hundreds}")  
else:  
    print("输入错误,请输入一个3位正整数。")

当你运行这个程序时,它会提示你输入一个3位正整数。输入后,它会拆分这个数字并输出个位、十位和百位上的数字。

例如,如果你输入数字123,输出将会是:

五、总结:

5.1 实验过程中的问题及解决方法:

1.使用 float() 函数时的问题

问题:尝试将一个非数字字符串转换为浮点数。

解决方法:在尝试转换之前,使用try-except块捕获ValueError异常,以确保输入是有效的数字字符串。

2.使用 bin()oct(), 和 hex() 函数时的问题

问题:这些函数只能接受整数作为输入,如果传入非整数类型,会抛出TypeError

解决方法:确保你传递给这些函数的值是整数类型。如果值可能是其他类型,可以先使用int()函数进行转换。

5.2 实验收获

1.转换类型的深入理解

通过实践,我深入理解了这些函数如何将整数转换为浮点数、二进制、八进制和十六进制数。这加深了我对Python数据类型转换的认识,也提升了我处理不同类型数据的能力。

2. 错误处理的重要性

在实验中,我遇到了类型转换失败的情况,例如尝试将非数字字符串转换为浮点数或尝试将非整数类型转换为二进制、八进制和十六进制数。通过使用try-except块捕获异常,我学会了如何优雅地处理这些错误情况,提高了代码的健壮性。

3. 格式化输出的技巧

实验中,我了解到bin()oct(), 和 hex()函数返回的字符串可能不包含足够的前导零,这影响了输出的可读性。通过使用字符串格式化,我学会了如何控制输出的格式,确保输出的字符串具有固定长度和适当的前导零。

4. 扩展应用的可能性

通过本次实验,我不仅掌握了基本的类型转换技巧,还思考了这些函数在更复杂场景中的应用。例如,在处理二进制数据时,我可以使用bin()函数来查看整数的二进制表示;在调试或分析内存占用时,我可以使用hex()函数来查看内存地址的十六进制表示。

5. 编程实践和问题解决能力的提升

通过动手实验,我不仅巩固了理论知识,还提升了自己的编程实践能力和问题解决能力。在遇到问题时,我学会了如何分析问题的原因,寻找解决方案,并通过实践验证解决方案的有效性。

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里无偿获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值