我的python程序需要帮助。我正在做一个计算器。
必须形成数字,但由于某种原因,它们不会相加。
似乎我做的一切都是正确的,但程序不起作用。
请帮帮我。 Picture
代码:
a = input('Enter number A \n');
d = input('Enter sign operations \n')
b = input('Enter number B \n')
c = a + b
if str(d) == "+":
int(c) == "a + b"
print('Answer: ' + c)
答案 0 :(得分:1)
请不要发布截图。复制并粘贴文本并使用{}代码降价。
input()返回什么数据类型?它始终是一个字符串。你键入的内容并不重要。
在这个程序中实际计算出的变量c在哪里?第4行。
用什么类型的数据来计算c?两个字符串。
使用" +"会发生什么?操作两个字符串而不是两个数字?尝试运行您的程序,当它提示您输入数字A"时,键入" Joe"。当它提示你输入数字B"时,输入" Bob"。你的课程做了什么?
如果要进行算术运算,则需要从输入的每个字符串中创建数值对象。
我认为你尝试过你认为会在第7行做的事情。但它并没有起作用。 " =="用于测试相等性,而不是分配值。单身" ="用于将值绑定到变量名称。您可以在第1行到第4行正确执行此操作。请注意,普通变量名称始终位于" ="的左侧。标志。你在" ="。
的右边做了所有花哨的东西您实际上可以删除第6行和第7行,并且程序的输出不会改变。
答案 1 :(得分:0)
public add_post()
{
InitializeComponent();
W1.Navigate("C:\\Users\\AkihiroKisaragi\\source\\repos\\Application_Tutor\\Application_Tutor\\newpost.php");
MainWindow w = new MainWindow();
w.buttonmenu.Visibility = Visibility.Collapsed;
String ckText = editor1.Text;
String ckValue = editor1.Value;
}
和a
是字符串。
b
连接字符串a + b
和a
。
您需要将字符串转换为int:
b
删除行:
c = int(a) + int(b)
答案 2 :(得分:0)
以下是完整的代码,应该符合您的要求:
a = input('Enter number A \n');
operation = input('Enter sign operations \n')
b = input('Enter number B \n')
c = a + b
if operation == "+":
c= int(a) + int(b)
print('Answer:', c)
答案 3 :(得分:0)
由于您似乎也想输入操作符号,因此您也可以尝试eval
a = input('Enter number A \n');
d = raw_input('Enter sign operations \n')
b = input('Enter number B \n')
eval_string = str(a) + d + str(b)
print ( eval(eval_string) )
你应该知道input
只接受整数和raw_input
,即使给定一个整数将其保存为字符串,所以它只保存字符串。