python入门16课_3小时入门Python——第十六课数字编程

无需计算的程序非常罕见。因此,学习用数字编程永远不是一个坏选择。我们将要学习的更有价值的技能是用户数据的处理。借助它,您可以创建交互式且更加灵活的应用程序。因此,让我们开始吧!

从用户输入中读取数字

由于您已经熟悉 input() Python 中的函数,因此传递给该函数的所有数据都被视为 string,这对您来说并不陌生。但是,我们应该如何处理数值呢?通常,将它们显式转换为相应的数字类型:

integer = int(input())

floating_point = float(input())

注意当前的最佳实践:至关重要的是不要将变量命名为内置类型(例如,float 或 int)。另一个警告与用户错误有关。如果用户输入不正确的输入,ValueError 将会发生。目前,我们将仅限于此。不用担心,有关错误的更多信息可在专用主题中找到。现在,考虑一个处理数字输入的更详细,更实际的示例。

自由飞行里程

假设您有一张带有免费航空里程奖励计划的信用卡(或者您可能已经有一张)。作为用户,您应该每月输入平均从此卡上花费的金额。假设奖金计划为您每消费 1 美元,即可获得 2 英里的免费飞行里程。这是一个简单的程序,可以弄清楚何时可以免费旅行:

# the average amount of money per month

money = int(input("How much money do you spend per month: "))

# the number of miles per piece of money

n_miles = 2

# earned miles

miles_per_month = money * n_miles

# the distance between London and Paris

distance = 215

# how many months do you need to get

# a free trip from London to Paris and back

print(distance * 2 / miles_per_month)

该程序将计算您需要多少个月才能往返选定的距离。

尽管建议在该 input() 函数中为用户编写消息,但在我们的编程挑战中避免它们,否则您的代码可能无法通过我们的测试。

进阶作业形式

每当使用等号时 =,实际上就为名称分配了一些值。因此,= 通常称为赋值运算符。同时,还有其他可在 Python 中使用的赋值运算符。它们也称为复合赋值运算符,因为它们一步执行算术运算和赋值。看看下面的代码片段:

# simple assignment

number = 10

number = number + 1 # 11

此代码等效于以下代码:

# compound assignment

number = 10

number += 1 # 11

从示例中可以清楚地看到第二段代码更加简洁(因为它没有重复变量的名称)。

当然,对于算术运算的其余部分也存在类似的分配形式:-=,*=,/=,//=,%=,**=。如果有机会,可以利用它们节省时间和精力。

接下来是复合分配的一种可能的应用。

计数器变量

在编程中,循环与称为 counters 的特殊变量一起使用。一个柜台一个特定的代码是如何运行的次数计数。同样,计数器应为整数。现在我们要说清楚了:您可以使用运算符 += 和 -= 分别增加或减少计数器。

考虑以下示例,其中用户确定计数器增加的值:

counter = 1

step = int(input()) # let it be 3

counter += step

print(counter) # it should be 4, then

如果您只需要用户提供非负整数(毕竟我们要增加计数器!),则可以使用该 abs() 函数来防止输入错误。它与 Python 内置函数有关,并返回数字的绝对值(即,值不考虑其符号)。让我们重新调整最后一个程序:

counter = 1

step = abs(int(input())) # user types -3

counter += step

print(counter) # it's still 4

如您所见,由于该 abs() 功能,我们得到了一个正数。

就目前而言,您可以对传递错误,循环和**内置函数(在 Python 中进行数学运算)**所提及的内容不了解太多 。我们将追赶并确保您全面了解这些主题。继续与我们学习!

因此,我们阐明了有关整数运算和 Python 中数字输入处理的新细节。随时在将来的项目中使用它们。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值