小白學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. python - linux怎么在每天的凌晨2點執行一次這個log.py文件2. 關于mysql聯合查詢一對多的顯示結果問題3. 實現bing搜索工具urlAPI提交4. MySQL主鍵沖突時的更新操作和替換操作在功能上有什么差別(如圖)5. 數據庫 - Mysql的存儲過程真的是個坑!求助下面的存儲過程哪里錯啦,實在是找不到哪里的問題了。6. windows誤人子弟啊7. 冒昧問一下,我這php代碼哪里出錯了???8. 如何用筆記本上的apache做微信開發的服務器9. 我在網址中輸入localhost/abc.php顯示的是not found是為什么呢?10. mysql優化 - MySQL如何為配置表建立索引?
