小白学python的问题 关于%d和%s的区别
问题描述
第一段代码:
# -*- coding:gb2312 -*-age=18print('====================')print('你的年龄是:%d'%age)
第一段代码的执行结果:
===========分隔符===========================
第二段代码:
# -*- coding:gb2312 -*-age=18print('====================')print('你的年龄是:%s'%age)
第二段代码的执行结果:
===========分隔符===========================
第三段代码:
# -*- coding:gb2312 -*-age=input('请输入您的年龄:')print('您的年龄是:%d'%age)
第三段代码的执行结果:
===========分隔符===========================
第四段代码:
# -*- coding:gb2312 -*-age=input('请输入您的年龄:')print('您的年龄是:%s'%age)
第四段代码的执行结果:

为什么第一段代码和第二段代码当中,不管是写%d还是写%s执行结果都是一样的,而在第三段代码和第四段代码中,写%d还是写%s执行结果不一样? 问题出在哪里,为什么第三段代码是错误的?(PS:我的python版本是3.5.1。 用的编辑器是Geany)
问题解答
回答1:python不像C语言,声明变量是不需要指定类型的,它会自动判定变量的类型,从键盘输入的都是字符串类型,要用int转换。去查一下变量赋值,输入输出你就明白了。
回答2:input 输入进去默认都是字符串,需要使用%s可以用int() 转换为数字,用%d
相关文章:
1. nginx - 关于vue项目部署到ngnix后出现的问题2. jpa mysql 如何id自增初始值?3. javascript - 怎么才能有效的防止网页被盗?4. javascript - 问一个有趣的问题: 如何将 数字 转成 金额格式5. python - 有一个函数名(字符串形式),如何能够调用这个函数?6. javascript - 一个字符串转换成数字,例子就是a="2,322.222",b=’1,211.21’,如何在angualr中执行相减7. javascript - angularJS module之间可以通信吗?8. java - mysql查询,这是怎么查询的呢9. javascript - vue使用keep-alive不能保持滚动位置问题。10. MySQL的SELECT...FOR UPDATE究竟起什么作用

 网公网安备
网公网安备