栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

数据类型练习

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

数据类型练习

目录
  • 前言
  • Python题
    • 1.计算矩形面积C
    • 2.用一行代码求和
    • 3.字符串分段组合
    • 4.稳定的计算程序
      • 4.1 异常的定义
      • 4.2 常见的异常
      • 4.3 异常处理(try-except)
      • 4.4 最终代码
    • 5.字母统计

前言

无论在哪个编程语言中,数据类型都是最基础的东西,只有掌握了这些才有可能进一步做好编程去解决问题,接下来将以python123的题目为例进行讲解。
本篇文章的内容较为简单,涉及的内容较为浅显,不需要的读者可不必往下看。

Python题 1.计算矩形面积C


这仅仅是简单的输入和格式化输出罢了,显然面积值是浮点类型,代码如下:

l=int(input())
w=int(input())
print("{:.2f}".format(l*w))

倘若我们略施小计,即可用一行代码来解决(虽然在代码可读性上略显复杂):print("{:.2f}".format(int(input())*int(input())))

2.用一行代码求和


虽然题目中所说是用一行代码求和,但在实操中它的平均代码量为4行,笔者暂未想到如何用一行代码解决该问题。代码如下:

n,s=int(input()),0
for i in range(1,n+1):
    s+=i
print(s)
3.字符串分段组合


本题中有个知识点,即是字符串的分割(split函数):str.split(str="", num=string.count(str))
参数:

  1. str – 分隔符,默认为所有的空字符,包括空格、换行(n)、制表符(t)等
  2. num – 分割次数。默认为 -1, 即分隔所有

返回值:返回分割后的字符串列表

因此,本题代码如下:

s=input().split('-')
print(s[0]+'+'+s[-1])
4.稳定的计算程序

在题目中,显然能看到此题与异常的处理相关,接下来首先介绍一下python中的异常:

4.1 异常的定义

异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。异常是Python对象,表示一个错误。

4.2 常见的异常
异常名称缘由
BaseException所有异常的基类
KeyboardInterrupt用户中断执行(通常是输入^C)
StandardError所有的内建标准异常的基类
ArithmeticError所有数值计算错误的基类
OverflowError数值运算超出最大限制
ZeroDivisionError除(或取模)零 (所有数据类型)
AttributeError对象没有这个属性
KeyError映射中没有这个键
MemoryError内存溢出错误(对于Python 解释器不是致命的)
NameError未声明/初始化对象 (没有属性)
SyntaxErrorPython 语法错误
TypeError对类型无效的操作
ValueError传入无效的参数
SyntaxWarning可疑的语法的警告
4.3 异常处理(try-except)

以下为基本的try…except…else的语法:

try:
<语句>        #运行别的代码
except <名字>:
<语句>        #如果在try部份引发了'name'异常
except <名字>,<数据>:
<语句>        #如果引发了'name'异常,获得附加的数据
else:
<语句>        #如果没有异常发生
4.4 最终代码

从而我们可以寻找异常的类型从而解决这道题,代码如下:

try:
    n=float(eval(input()))
    print("{:.4f}".format((1/n)**n))
except (ValueError,TypeError,NameError):
    print("请输入数字")
except ArithmeticError:
    print("运算异常")
5.字母统计


在Python语言中,用内部的统计出现次数的函数count(),因而一行即可解决问题;倘若在c语言中,则用循环来统计,因而代码如下:

print(input().count('a'))

同时也可以:

count,s=0,input()
for i in s:
    if i=='a':
        count+=1
print(count)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/980122.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号