小白學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. 視頻文件不能播放,怎么辦?2. mysql - 把一個表中的數據count更新到另一個表里?3. 請教使用PDO連接MSSQL數據庫插入是亂碼問題?4. mysql 查詢身份證號字段值有效的數據5. visual-studio - Python OpenCV: 奇怪的自動補全問題6. mysql - 分庫分表、分區、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處7. node.js - nodejs開發中常用的連接mysql的庫8. python bottle跑起來以后,定時執行的任務為什么每次都重復(多)執行一次?9. python - 爬蟲模擬登錄后,爬取csdn后臺文章列表遇到的問題10. Python爬蟲如何爬取span和span中間的內容并分別存入字典里?
