python中input()的用法及擴(kuò)展
input() 的用法
Python3.x 中
input() 函數(shù)接受一個(gè)標(biāo)準(zhǔn)輸入數(shù)據(jù),返回為 string 類型。
python3將input() 和 raw_input() 進(jìn)行了整合,去除了raw_input( ),僅保留了input( )函數(shù)。
Python2.x 中
input() 相等于 eval(raw_input(prompt)) ,用來(lái)獲取控制臺(tái)的輸入。
raw_input() 將所有輸入作為字符串看待,返回字符串類型。
input() 在對(duì)待純數(shù)字輸入時(shí)具有自己的特性,它返回所輸入的數(shù)字的類型( int, float )。
注意:python2里input() 和 raw_input() 這兩個(gè)函數(shù)均能接收字符串 ,但 raw_input() 直接讀取控制臺(tái)的輸入(任何類型的輸入它都可以接收)。而對(duì)于 input() ,它希望能夠讀取一個(gè)合法的 python 表達(dá)式,即你輸入字符串的時(shí)候必須使用引號(hào)將它括起來(lái),否則它會(huì)引發(fā)一個(gè) SyntaxError 。除非對(duì) input() 有特別需要,否則一般情況下我們都是推薦使用 raw_input() 來(lái)與用戶交互。
注意:python3 里input() 默認(rèn)接收到的是 str 類型。
示例:
#python2
#input() 需要輸入 python 表達(dá)式
>>>a = input("input:")
input:123 ? ? ? ? ? ? ? ? ?# 輸入整數(shù)
>>> type(a)
<type 'int'> ? ? ? ? ? ? ? # 整型
>>> a = input("input:") ? ?
input:"runoob" ? ? ? ? ? # 正確,字符串表達(dá)式
>>> type(a)
<type 'str'> ? ? ? ? ? ? # 字符串
>>> a = input("input:")
input:runoob ? ? ? ? ? ? ? # 報(bào)錯(cuò),不是表達(dá)式, 字符串需加引號(hào)
Traceback (most recent call last):
? File "<stdin>", line 1, in <module>
? File "<string>", line 1, in <module>
NameError: name 'runoob' is not defined
<type 'str'>
?
#raw_input() 將所有輸入作為字符串看待
>>>a = raw_input("input:")
input:123
>>> type(a)
<type 'str'> ? ? ? ? ? ? ?# 字符串
>>> a = raw_input("input:")
input:runoob
>>> type(a)
<type 'str'> ? ? ? ? ? ? ?# 字符串
?
#python3?
#input() 示例用法如同raw_input擴(kuò)展—將控制臺(tái)輸入的字符串轉(zhuǎn)化成列表
示例:
eg1.
>>> x=input()
1,2,3,4
>>> xlist=x.split(",")
>>> print(xlist)
['1', '2', '3', '4']
>>> xlist = [int(xlist[i]) for i in range(len(xlist))] #for循環(huán),把每個(gè)字符轉(zhuǎn)成int值
>>> print(xlist)
[1, 2, 3, 4]
?
#split(“”)函數(shù)的參數(shù)可以是任何分隔符,包括(a,b,c….;1,2,3…;%,!,*,空格)eg2.
>>> x=input()
1 2 3 4
>>> xlist=x.split(" ")
>>> print(xlist)
['1', '2', '3', '4']
>>> xlist = [int(xlist[i]) for i in range(len(xlist))]
>>> print(xlist)
[1, 2, 3, 4]?轉(zhuǎn)換成元組的方法類似。
附:str list tuple 相互轉(zhuǎn)換的方法:
列表,元組和字符串python中有三個(gè)內(nèi)建函數(shù):他們之間的互相轉(zhuǎn)換使用三個(gè)函數(shù),str(),tuple()和list(),具體示例如下所示:
>>> s = "xxxxx"
?
>>> list(s)
['x', 'x', 'x', 'x', 'x']
>>> tuple(s)
('x', 'x', 'x', 'x', 'x')
?
>>> tuple(list(s))
('x', 'x', 'x', 'x', 'x')
>>> list(tuple(s))
['x', 'x', 'x', 'x', 'x']列表和元組轉(zhuǎn)換為字符串則必須依靠join函數(shù),如下所示:
>>> "".join(tuple(s))
'xxxxx'
>>> "".join(list(s))
'xxxxx'
?
>>> str(tuple(s))
"('x', 'x', 'x', 'x', 'x')"input函數(shù)的高級(jí)使用
a = input('請(qǐng)輸入一個(gè)加數(shù):')
b = input('請(qǐng)輸入一個(gè)加數(shù):')
print(a+b)
輸入一個(gè)數(shù)10回車

輸入30回車

查看類型
a = input('請(qǐng)輸入一個(gè)加數(shù):')
b = input('請(qǐng)輸入一個(gè)加數(shù):')
print(type(a),type(b))
print(a+b)

a = input('請(qǐng)輸入一個(gè)加數(shù):')
a = int(a) #將轉(zhuǎn)換之后的結(jié)果存儲(chǔ)到a中
b = input('請(qǐng)輸入一個(gè)加數(shù):')
b = int(b)
print(type(a),type(b))
print(a+b)
另一種方法
a = int(input('請(qǐng)輸入一個(gè)加數(shù):'))
b = int(input('請(qǐng)輸入一個(gè)加數(shù):'))
print(type(a),type(b))
print(a+b)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python實(shí)例之wxpython中Frame使用方法
本文介紹下wxpython中Frame的用法,不錯(cuò)的python編程實(shí)例,有需要的朋友參考下2014-06-06
python自動(dòng)化測(cè)試Data?Driven?Testing(DDT)用例解析
這篇文章主要為大家介紹了python自動(dòng)化測(cè)試Data?Driven?Testing(DDT)用例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09
openCV入門學(xué)習(xí)基礎(chǔ)教程第三篇
pencv是用于快速處理圖像處理、計(jì)算機(jī)視覺(jué)問(wèn)題的工具,支持多種語(yǔ)言進(jìn)行開(kāi)發(fā)如c++、python、java等,下面這篇文章主要給大家介紹了關(guān)于openCV入門學(xué)習(xí)基礎(chǔ)教程的相關(guān)資料,需要的朋友可以參考下2022-11-11
python批量telnet檢測(cè)IP地址的端口是否開(kāi)放
本文主要介紹了python批量telnet檢測(cè)IP地址的端口是否開(kāi)放,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04
Pytorch實(shí)現(xiàn)LSTM和GRU示例
今天小編就為大家分享一篇Pytorch實(shí)現(xiàn)LSTM和GRU示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-01-01
Python解析命令行讀取參數(shù)之a(chǎn)rgparse模塊
這篇文章主要介紹了Python解析命令行讀取參數(shù)之a(chǎn)rgparse模塊,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
Python網(wǎng)絡(luò)編程之Socket和HTTP協(xié)議詳解
在當(dāng)今互聯(lián)網(wǎng)時(shí)代,網(wǎng)絡(luò)編程是程序員不可或缺的一項(xiàng)技能,本文將介紹Python中兩種主要的網(wǎng)絡(luò)編程方式:Socket編程和基于HTTP協(xié)議的網(wǎng)絡(luò)編程,希望對(duì)大家有所幫助2024-04-04

