社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

python中的计数步骤[保持]

Thurgood Westlake • 5 年前 • 1529 次点击  

功能让我很困惑。

我这里的代码有什么问题,我肯定有很多问题,但请详细说明我做错了什么。

2000步是1英里,输入是步数,输出是步行英里数。

def steps_to_miles(user_steps):
    steps = input();
    mile = steps / 2000
    return user_steps

print('%0.2f' % user_steps)
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/46590
 
1529 次点击  
文章 [ 4 ]  |  最新文章 5 年前
Kundan Jha
Reply   •   1 楼
Kundan Jha    6 年前

你的代码应该是

def steps_to_miles():
    steps = input();
    mile = steps / 2000
    return mile

print('%0.2f' %steps_to_miles())

这应该管用。

user10417531
Reply   •   2 楼
user10417531    6 年前

这个 input() 函数等待用户输入-如果您在代码中不给它提供参数,它将不显示任何消息并等待您的输入。

它不代表函数输入-已经由 user_steps 参数。

这个 用户步骤 仅在函数(缩进部分)的范围内定义,因此 用户步骤 你的 print 语句不是同一个变量。

我想你是想这样写的

def steps_to_miles(steps):
    return steps / 2000

user_steps = input("Please enter the number of steps walked:\t")
print("You have walked %0.2f miles !" % steps_to_miles(user_steps))
Muhammad Hammad
Reply   •   3 楼
Muhammad Hammad    6 年前

对于计算步骤,代码如下:

def steps_to_miles():
    steps = int(input('Enter Steps: '));
    mile = steps / 2000
    return mile

print('You Walked',steps_to_miles(),'miles')
Stefan
Reply   •   4 楼
Stefan    6 年前

问题

  1. 输入返回一个字符串,不能对其进行算术运算
  2. python不使用分号作为行结束符
  3. 你返回的是步数,而不是英里数
  4. 您没有调用print语句中的函数
  5. 转换函数不应要求输入

试试这个

def steps_to_miles(user_steps):
    miles = int(user_steps) / 2000
    return miles

例子

>>> steps = input()
4321
>>> print( '%0.2f' % steps_to_miles( steps ) )
2.16