溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python中輸入和輸出語句的用法

發(fā)布時間:2020-11-24 12:05:18 來源:億速云 閱讀:1356 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關(guān)python中輸入和輸出語句的用法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

一、 input輸入函數(shù)

input函數(shù):獲取用戶輸入,保存成一個字符串。重要的話,說兩遍,input函數(shù)的返回值是一個字符串類型。哪怕你輸入的是個數(shù)字1,返回給你的只會是字符串“1”,而不是 整數(shù)1。下面是一些簡單的展示例子:

>>> inp  = input("please input your name: ")
please input your name: jack
>>> inp
'jack'
>>> type(inp)
<class 'str'>
>>> age  = input("please input your age: ")
please input your age: 18
>>> age
'18'
>>> type(age)
<class 'str'>
>>> a = input("請輸入一個字符:")
請輸入一個字符:
>>> a
''
>>> a = input("請輸入一個字符:")
請輸入一個字符:   前后帶有空白   
>>> a
'   前后帶有空白   '

第一個例子中,inp = input("please input your name: "),input函數(shù)里可以提供一個字符串,用來給用戶進(jìn)行輸入提示。input函數(shù)的返回值賦值給inp這個變量后,inp里就保存了用戶輸入的值。

type是Python內(nèi)置的函數(shù)之一,非常有用,用于查看對象的數(shù)據(jù)類型。例子中的inp是一個str字符串類型,這驗證了我們前面說的話。

第二個例子,我們輸入了年齡18,但age里保存的是一個“18”的字符串。

第三個例子,什么都沒輸入,返回的是一個空字符串。

第四個例子,有效輸入的前后空白被保留在了返回的字符串中。

從上面例子的展示中,我們不難發(fā)現(xiàn),input函數(shù)將我們的輸入原樣不動的返回給了我們,并包裝成一個字符串。這肯定是不行的,會帶來很多問題,所以通常我們都需要對用戶輸入進(jìn)行處理和判定。

比如對空輸入進(jìn)行處理:

inp = input("請輸入你的姓名:  ")
if inp == "":    
    inp = input("姓名不能為空,請重新輸入:  ")

比如將字符串轉(zhuǎn)換成數(shù)字類型:

age = input("請輸入你的年齡:  ")
age = int(age)   # 將字符串轉(zhuǎn)化為整數(shù)
if age > 18:
    print("你已經(jīng)成年!")
else:
    print("還沒斷奶?")

去除開頭的空白lstrip,去除結(jié)尾的空白rstrip以及去除兩端的空白strip

inp = input("請輸入你的姓名:  ")
inp = inp.strip()  # strip的用法在字符串?dāng)?shù)據(jù)類型有講述
print(inp)

判斷輸入的字符類型

前面我們在將字符串轉(zhuǎn)化為整數(shù)用的是int()函數(shù),這種方式有危險的,看下面的例子:

>>> s = "123"
>>> a = int(s)
>>> a
123
>>> s = "something"
>>> a = int(s)
Traceback (most recent call last):
  File "<pyshell#12>", line 1, in <module>
    a = int(s)
ValueError: invalid literal for int() with base 10: 'something'

對于形如“123”, “283242”的字符串,轉(zhuǎn)化沒問題,但是對于包含字符、特殊字符的字符串就沒辦法轉(zhuǎn)化了,會彈出異常錯誤。所以在使用int函數(shù)之前,要先對輸入進(jìn)行判斷。我們修改一下上面的例子:

age = input("請輸入你的年齡:  ")if age.isdigit():   # 使用isdigit函數(shù)判斷輸入是否全是數(shù)字格式
    age = int(age)   # 將字符串轉(zhuǎn)化為整數(shù)
    print("你的年齡是: ", age)else:
    print("輸入不合法!")

input函數(shù)有時可以巧妙地用于阻塞或暫停程序

print("程序前面部分執(zhí)行完畢......")

input("請按回車?yán)^續(xù)......")       # 在這里程序會暫停,等待你的回車動作

print("繼續(xù)執(zhí)行程序的后面部分......")

二、 print輸出函數(shù)

print函數(shù)我們其實已經(jīng)不陌生了,前前后后也用了不少次,多少有點經(jīng)驗,明白點它的用法了。

print函數(shù)用于將內(nèi)容格式化顯示在標(biāo)準(zhǔn)輸出上,主要指的是屏幕顯示器。

print可以接受多個字符串,字符串類型的變量或者可print的對象。每個字符串用逗號“,”隔開,連成一串輸出。print會依次打印每個字符串,同時,每遇到一個逗號“,”就輸出一個空格。

>>> a = "i am"
>>> b = "student"
>>> print(a,"a" , b)
i am a student      # 自動以空格分隔
>>> print(a+"a"+b)
i amastudent        # 無分隔

對于形如print(a+"a"+b)的語句,其實是先計算a+"a"+b的值,然后再通過print打印它。print()會自動執(zhí)行內(nèi)部的語句,輸出想要的結(jié)果。再看一個例子:

>>> a = 10
>>> b = 2
>>> print(sum((a, a*b)))        # 先求a*b,再求和,再打印
30

我們看一下print函數(shù)的原型:print(self, *args, sep=' ', end='\n', file=None)

sep參數(shù): 分隔的符號,默認(rèn)是一個空格;

end參數(shù): 打印后的結(jié)束方式,默認(rèn)為換行符\n。如果,設(shè)置end='',則可以不換行,讓print在一行內(nèi)連續(xù)打印?;钣胮rint的參數(shù),可以實現(xiàn)靈活的打印控制。

>>> a = "i am"
>>> b = "student"
>>> print(a,"a" , b, sep="*")
i am*a*student

感謝各位的閱讀!關(guān)于python中輸入和輸出語句的用法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI