小白學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
相關文章:
