小白學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文檔怎么查看?2. spring-mvc - spring-session-redis HttpSessionListener失效3. android - NavigationView 的側滑菜單中如何保存新增項(通過程序添加)4. javascript - ios返回不執行js怎么解決?5. javascript - vue 元素加樣式該怎么做6. 除了 python2 和 python3,ipython notebook 還可以用哪些內核?7. java - 怎么處理前臺要展示,但是數據庫表沒有該字段的實體類冗余屬性呢?8. mysql - 怎么生成這個sql表?9. 提示語法錯誤語法錯誤: unexpected ’abstract’ (T_ABSTRACT)10. tp5 不同控制器中的變量調用問題
