首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么input('str‘+ int )可以工作,而print(int + 'str')不行?

在Python中,input()函数用于接收用户的输入,并将其作为字符串返回。而print()函数用于将给定的参数打印到控制台上。

在给定的问答内容中,input('str‘+ int )可以工作,是因为input()函数接收的是一个字符串作为参数,而'str' + int会将整数转换为字符串,然后将两个字符串进行拼接。

print(int + 'str')不行的原因是,print()函数的参数应该是一个字符串或多个字符串的组合。当我们将整数int与字符串'str'进行拼接时,Python会抛出一个TypeError错误,因为整数和字符串不能直接相加。

为了解决这个问题,我们可以使用字符串格式化来将整数转换为字符串,并与其他字符串进行拼接。例如,可以使用print('{}{}'.format(int, 'str'))来实现整数和字符串的拼接并打印出来。

总结起来,input('str‘+ int )可以工作是因为input()函数接收的是字符串参数,而print(int + 'str')不行是因为整数和字符串不能直接相加。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

这些年,你们一起踩过的坑(1)

类似的问题还有,为什么教程里有输出,我代码里就没有?上面说了,python shell 会自动输出,而在代码中,你需要 print。 3. 程序为什么到输入的地方就不动了? ?...猜数字输入后报错 报错提示 TypeError: unorderable types: str() < int() ? py3 的 input,不管你输入什么内容,都会被当做字符串来处理。...字符串是不能跟数字之间比大小的。...所以需要手动转换一下: answer = int(input()) py2 也会有类似的问题(发生在 raw_input),而且更坑的是用 strint 比大小并不会报错,而是返回一个并不是你预想的结果...会有人觉得我这里不是加了括号了吗,为什么不行?这个式子在程序中的执行是:1. 输出 'num is %s',2. 把 print 的返回值做 % 11 操作。

48550

Python内置(3)exec&eval、globals&locals、input&print、5个基本类型、object

inputprint:面包和黄油 inputprint可能是您最早知道的Python的两个函数。它们看起来很直接,不是吗? input输入一行文本,然后print将其打印出来,就这么简单。...str是 Python 中最常见的数据类型之一。使用input方法获取用户输入会给出一个字符串,Python 中的所有其他数据类型都可以转换为字符串。...complex是 float的超类型, float又是int 的超类型。 这意味着所有int 都作为float 和complex 有效,但反过来不行。...从它们的“祖先”可以看出,所有其他数据类型都不是任何东西的“子类”(除了object,它将永远存在)。bool 继承自int 。 现在,在这一点上,您可能想知道“为什么?...为什么bool是int子类? 这主要是因为兼容性原因。从历史上看,Python中的逻辑真/假操作仅用于0表示假和1表示真。

51320

C语言被指针手撕

至于为什么数组名和取地址数组名相同是因为指针中存储的是一个类型的起始地址。...//不行,对于一个二维数组而言,数组的首元素是其第一行,一个一维数组的地址当然不能用一个整形指针来接受。 void test(int* arr[5]){}//ok? //不行。...函数指针是指针,我们是否需要先解引用再进行传参呢?前面有提到,函数名也是函数的地址,函数指针存储的也是函数的地址。因此就算不对函数指针进行解引用操作也可以直接使用,上面的代码就已经证明。...,为什么还要用函数指针来调用?...宽度又给我们提供了,一个类型的比较范围。从起始地址加上j乘宽度就可以得到当前元素的地址。代码运行结果也确实告诉我们,改良后的代码不但能排序整形同样可以排序字符型。

33100

一文带你搞懂Python的输入输出

二、 input输入函数 获取用户输入,保存成一个字符串。重要的话,说两遍,input函数的返回值是一个字符串类型。哪怕你输入的是个数字1,返回给你的只会是字符串“1”,不是整数1。...'jack' >>> type(inp) #第二个例子 age = input("please input your age: ") please input your...从上面例子的展示中,不难发现,input函数将用户的输入原样不动的返回给了变量 ,并包装成一个字符串。这肯定是不行的,会带来很多问题,所以通常都需要对用户输入进行处理和判定。...input函数有时可以巧妙地用于阻塞或暂停程序 print("程序前面部分执行完毕......") input("请按回车继续.........如果,设置end='',则可以不换行,让print在一行内连续打印。活用print的参数,可以实现灵活的打印控制。

64810

我要偷偷的学Python,然后惊呆所有人(第一天)

() int() float() 总结一下 标准输入输出 print()函数 input()函数 注意点 控制语句 条件控制语句 if判断 if···else··· if···elif···else...我们只需通过str(number)一个步骤,便可以将整数类型的【153】转化为字符串类型的【153】,成功完成数据拼接。 int() 将数据转换为整数类型的方法也很简单,就是int()函数。...那么,经过之前str()和int()操练,float()函数是不是好懂了一些? 总结一下 ---- 标准输入输出 好滴吧,可能有的人会犯嘀咕,为什么不讲输入输出。...之所以现在才说输入输出,是因为这里面实在可以包含太多东西了,不要被上面的这几个例子所迷惑,print可以打印各种数据类型,参考本文前面出现的print()以及后面将会出现的print() input()...所以,当你在函数的括号内写出问题时,input()函数会将此问题原样显示在屏幕上,并在终端区域等待你针对此问题的回答。 可是,我们为什么要在终端处输入回答呢?不输入行不行

50020

指针进阶详解

字符串“abcdef”是常量字符串,只会在内存常量区存储一份,不会存储两份一模一样的字符串去浪费空间。所以str3和str4存储是相同的地址。...p1毫无疑问是指针数组,那么p2其实就是我们要写出来的数组指针 为什么是数组指针是这样书写的?...当给首地址加一可以发现只能跳过一个元素指向下一个元素,数组的地址加1直接跳过整个数组指向后面的空间 数组指针的使用 既然数组指针指向的是数组,那数组指针中存放的应该是数组的地址。...二维数组传参 void test(int arr[3][5]) {} void test(int arr[][]) //不可以,第一个[]里面的内容可以省略,第二个不行,第二个一旦省略数组就无法确定...函数指针的书写和使用 函数指针的创建: 首先p是个指针需要和*结合,()的优先级高于 * ,所以用()把 *p括起来,P所指向的内容是函数的参数个数及其类型,返回值为int ,此时可以得出int (

17130

C语言进阶-高阶指针

"; //str1和str2是字符数组,字符变量在栈区开辟空间 //str1 ==str2比较的是首元素地址(数组名代表首元素地址),开辟的空间是不同的 char *str3 = "hello..."; //str3和str4是字符指针,指向的是一个同一个常量字符串,常量字符串在常量区开辟 //当指向同一个字符串的时候,他们实际会指向同一块内存(地址相同) 输出结果: str1 and str2...,是一维数组的地址,可以数组指针来接收 print_arr2(arr, 3, 5); return 0; } 下面代码的意思 int arr[5]; //数组 int *parr1[10...对应的接收类型是数组指针,这里是指针数组,不行 {} void test(int (*arr)[5])//ok? 可以,类型一致 {} void test(int **arr)//ok?...() {     int x, y; int input = 1;     int ret = 0;     int(*p[5])(int x, int y) = { 0, add, sub

35750

Python 自动化指南(繁琐工作自动化)第二版:一、PYTHON 基础知识

您的代码必须显式地将整数转换为字符串,因为 Python 不能自动完成这项工作。(当我们讨论str()、int()和float()函数时,转换数据类型将在第 13 页的剖析您的程序中解释。)...之后,你可以在带有其他变量和值的表达式中使用它 ➋。当一个变量被赋予一个新值 ➌ 时,旧值就被遗忘了,这就是为什么在例子的最后spam被求值为42不是40。这叫做覆盖变量。...# ask for their age # ➏ myAge = input() print('You will be ' + str(int(myAge) + 1) + ' in a year...这就是为什么在这本书里,你会看到print()不是print。第 3 章更详细地描述了函数。 input()函数 input()函数等待用户在键盘上键入一些文本并按下Enter。...bacon = 20 bacon + 1 下面两个表达式应该求值为什么? 'spam' + 'spamspam' 'spam' * 3 为什么eggs是有效变量名100无效?

96031

2022年最新Python大数据之Python基础【二】

# float转换为int类型,将会将小数部分去除,只保留整数部分 print(int(float1)) # int >> str # int类型可以随意转换为str类型,但是输出结果不发生改变,转化为...str类型后可以使用str类型的各种函数 print(str(int1)) # str >> int # 字符串中是int类型数据,可以转换为int类型 print(int(str1)) # ValueError...>> str # float类型可以随意转换为str类型,但是输出结果不发生改变,转化为str类型后可以使用str类型的各种函数 print(str(float1)) # str >> float...# 字符串中是int类型数据,则可以转换为float类型数据,并且在末尾加.0 print(float(str1)) # 字符串中是float类型数据,可以转换为float类型数据 print(float...= 比较运算就是比较数据值的大小 比较运算可以连续使用 比较运算中比较相等使用== 不能使用 = (赋值运算符) # = !

67630

python3 笔记

字符串拼接 %d,%f,%s 格式化输出 str()、int()、float()强转类型函数 #age=int(input('请输入您的年龄:')) #print ( age-1) #强转化的函数例子...#age=int(input('请输入您的年龄:')) #print ( '你的周岁是:'+str(age-1)) #age=input('请输入你的年龄:') #print('你的周岁是:'+str(...#编写一个程序(可以询问姓名和年龄,并且告知姓名的字符个数和你明年的年龄) print('welcome') name=str(input('what\'s your name:')) print('很高兴见到你...:'+name) age=int(input('你的年龄:')) print ('你的姓名字符个数:'+str(len(name))) print('你明年的年龄:'+str(age+1)) #综合数据类型...() < int() 报错,因为列表有字符串,先删掉字符在排序python2不会报错这样错的。

72120

语音信号处理教程(一)音频文件录制、导入、绘图

getaudiodata()函数 mySpeech = getaudiodata(r, 'int16'); % get data as int16 array figure;plot(mySpeech)...中如何完成上面的操作,在Python中,需要用到pyaudio和wave库,其中pyaudio在安装时,使用conda install pyaudio来完成,如果使用pip install pyaudio是不行的...,因为pyaudio库需要PortAudio的支持,PortAudio是一个免费、跨平台、开源的音频I/O库,这并不是一个python的库函数,因此不能使用pip来进行安装,至于为什么用conda安装是可以的...在load_wave()函数中通过str_data = wf.readframes(nframes)读上来的都是字符串类型,因此我们又通过np.fromstring转成了np.short类型。...('Start speaking for %ds\n' % record_second) for _ in range(0, int(RATE * record_second / CHUNK)

2K10

Python基础语法入门篇(一)

注释 在我们工作编码的过程中,如果一段代码的逻辑比较复杂,不是特别容易理解,可以适当的添加注释,以辅助自己 或者其他编码人员解读代码。 注释是给程序员看的,为了让程序员方便阅读代码,解释器会忽略注释。...' print(str + str2) # 单引号和双引号的嵌套 str3 = '"哈哈"' str4 = "'哈哈'" print(str3) print(str4) # 单引号和双引号会就近匹配,相同的不可以嵌套...str5 = "hello" print(type(str5)) # #str是string的一个缩写 如果临时想要查看一个变量存储的数据类型,可以使用 type(变量的名字)...True 逻辑与运算和逻辑或运算取值时为什么是那种规则。...age = 18 if age >= 18: print("你成年了") else: print("你是未成年人") age = int(input("请输入年龄:")) if

36120
领券