日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Python中判斷input()輸入的數據的類型_python

作者:蕪湖起飛飛飝 ? 更新時間: 2022-12-21 編程語言

在pyhton中,經常會用到input()語句,但是input()語句輸入的內容只能時字符串類型,而我們經常要輸入int類型的數據等,那么就需要用到int()方法給輸入的內容強制轉換為int類型:

a = int(input())

但是這樣就會有一個問題,一旦我輸入的不是數字,而是字母、標點等,這樣就會報錯,因為字母燈是不能轉成int類型的,所以我們就要判斷一下,輸入的內容為什么:

str = input()
if str.isdigit() :
	a = int(str)

這樣就可以判斷輸入的是不是數字,還是字母、符號等

方法:
str.isdigit()為True表示輸入的所有字符都是數字
str.isalnum()為True表示輸入的所有字符都是數字或者字母
str.isalpha()為True表示輸入的所有字符都是字母
str.isdigit()為True表示輸入的所有字符都是數字
str.islower()為True表示輸入的所有字符都是小寫
str.isupper()為True表示輸入的所有字符都是大寫
str.istitle()為True表示輸入的所有單詞都是首字母大寫,像標題
str.isspace()為True表示輸入的所有字符都是空白字符、\t、\n、\r

更新一下:
注意,用isdigit()來判斷小數,比如3.14就會返回FALSE。
isdigit()只是判斷輸入的是不是純數字,不是判斷你輸入的是不是一個數,這個方法只是判斷你輸入的是什么字符,并不是判斷你輸入的是什么類型,因為無論如何,輸入的值都為字符串類型,小數中有小數點,當然會返回FALSE了。
如何判斷輸入是不是小數,首先判斷輸入有沒有小數點,幾個小數點,小數點的位置、再按照小數點進行切片,切為兩片,判斷每一片是否都為純數字

下面是一個類型轉換的方法,將輸入的字符串轉換為int或float類型的數據:

# 將字符串轉為int或float類型
def change_type(str):
    # 先判斷輸入是不是字符串類型,是的話就繼續,不是的話就將輸入返回
    if type(str) == type("123"):
        # 判斷輸入是不是純數字
        if str.isdigit() :
            # 將輸入轉為int類型并返回
            result = int(str)
            print(result,"是整數 類型是",type(result))
            return result
        else :
            # 判斷字符串中是否只有一個小數點、小數點是不是不在字符串的開始或結尾
            if str.count(".")==1 and not str.startswith(".") and not str.endswith("."):
                # 將字符串按小數點切為兩片,整數部分與小數部分
                # 整數部分
                left = str.split('.')[0]
                # 小數部分
                right = str.split('.')[1]
                # 判斷切片的部分是不是純數字
                if left.isdigit() & right.isdigit():
                    # 將輸入轉為float類型并返回
                    result = float(str)
                    print(result,"是小數 類型是",type(result))
                    return result
    else:
        # 返回字符串
        print("輸入的變量不是字符串類型")
        result = str
        return result

原文鏈接:https://blog.csdn.net/m0_55034727/article/details/121563466

相關推薦

欄目分類
最近更新