在学习python的同时,我一直在阅读循环。以下工作没有错误,但是如果我将16
作为值插入,我会得到
Insert numbers only
Your weight is 16 lbs
这不正确
while True:
weight_input = raw_input ("Add your weight: ")+(" lbs")
try:
val = int(weight_input)
except ValueError:
print("Insert numbers only")
print("Your weight is " + weight_input + "!")
我错过了什么?我试图打印出重量,如果值=其他任何整数然后发送错误。
更新
决定使用上面的表格。我在添加"lbs"
任何帮助时收到错误消息? print(tabulate([[weight_input]+"lbs"], tablefmt='pipe', headers=('Weight')))
答案 0 :(得分:5)
您要将" lbs"
添加到生成变量weight_input
"16 lbs"
的输入中。你可以添加" lbs"在循环结束时显示的消息:
while True:
weight_input = raw_input ("Add your weight: ")
try:
val = int(weight_input)
except ValueError:
print("Insert numbers only")
print("Your weight is " + weight_input + " lbs!")
答案 1 :(得分:3)
当你这样做时
weight_input = raw_input ("Add your weight: ")+(" lbs")
您正在将+(" lbs")
添加到输入字符串中。尝试删除它。
答案 2 :(得分:1)
您必须首先删除raw_input的预告片= (" lbs"),然后通过.isdigit()检查输入是否是一个数字。
library(dplyr)
df <- tibble(
id = c("A", "A", "B", "C", "C", "D"),
protocol = c("X", "Y", "X", "X", "X", "Y"),
date = c(seq(as.Date("2018-01-01"), as.Date("2018-01-06"),
by="days")),
var = 1:6)