Fork me on GitHub

一 概念
这种有很多常用的方法,这里只介绍一种常用的方法是使用正则表达式来匹配数字的模式。通过定义一个匹配数字的正则表达式,然后使用re模块中的search()方法来进行匹配。
二 例子:
下面是一个简单的例子:
# 示例代码5
import re

input_str = input("请输入一个字符串: ")
pattern = r'^[0-9]+$'
if re.search(pattern, input_str):
    print("输入的字符串是数字")
else:
    print("输入的字符串不是数字")


这个很清楚了,接下来再给出一个笔者用到的例子:

import os
import sys
import re
from multiprocessing import Process


def test_input(fn):
    sys.stdin = os.fdopen(fn)
    while True:
        msg = sys.stdin.readline()
        pattern = r'^[0-9]+$'
        if re.search(pattern,msg):
            info = int(msg.strip('\n'))
            print(info)
            if info == 12:
                print("equel is 1")
        else:
            print("input wrong value ")



if __name__ == "__main__":
    print("start progress!")
    fn = sys.stdin.fileno()
    Process(target=test_input, args=(fn, )).start()

 

posted on 2023-10-25 11:11  虚生  阅读(80)  评论(0编辑  收藏  举报