How do I do simple user input in python? [duplicate]

邮差的信 提交于 2019-11-26 11:35:35

问题


This question already has an answer here:

  • How can I read inputs as numbers? 10 answers

I\'m just playing with input and variables. I\'m trying to run a simple function:

slope = (y2-y1)/(x2-x1)

I\'d like to prompt the user to enter y2, y1, x2 and x1. What is the simplest, cleanest way to do this?


回答1:


You can use the input() function to prompt the user for input, and float to convert the user input from a string to a float:

x1 = float(input("x1: "))
y1 = float(input("y1: "))
x2 = float(input("x2: "))
y2 = float(input("y2: "))

If you're using python 2, use raw_input() instead.




回答2:


This is the simplest way:

 x1 = float(raw_input("Enter x1: "))

Note that the raw_input() function returns a string, which is converted to a floating point number with float(). If you type something other than a number, you will get an exception:

>>> float(raw_input())
a
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
ValueError: invalid literal for float(): a

If you're using Python 3 (it sounds like you are), use input instead of raw_input.




回答3:


You can use:

foo=input('Please enter a value:')

Where the string 'Please enter a value:' would be your message, and foo would be your variables.




回答4:


If the user is entering the inputs in just one line with space as delimiting word between those inputs, you can write:

val1, val2, val3 = raw_input().split(' ')

Now, you can change it to:

val = float(val1)

The awesome trick is that in this way you don't waste your space creating a new list and storing your values in that and then fetching it.



来源:https://stackoverflow.com/questions/4730949/how-do-i-do-simple-user-input-in-python

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!