最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python正則表達式實現(xiàn)簡易計算器功能示例

 更新時間:2019年05月07日 09:16:32   作者:微信1257309054  
這篇文章主要介紹了Python正則表達式實現(xiàn)簡易計算器功能,涉及Python正則判定及數(shù)值計算相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了Python正則表達式實現(xiàn)簡易計算器功能。分享給大家供大家參考,具體如下:

需求:使用正則表達式完成一個簡易計算器。

功能:能夠計算簡單的表達式。

如:1*2*((1+2)/(2+3)+1)*5.1-3+2**2

import re
class SimpleCalc(object):
  # 表達式檢測
  def check(self,exp):
    # 合法字符檢測
    res = re.findall(r"[^\d\+\-\*/\(\)\.]", exp)
    print(res)
    if res:
      print("表達式不正確?。。?)
      print("輸入了非法字符:", res)
      return False
    # 括號檢測
    res = re.findall(r"(?:[\d\)]\()|(?:\([\*/\)])|(?:[\-\+\*/]\))",exp)
    if res :
      print("表達式不正確?。?!")
      print("括號使用有誤:", res)
      return False
    res = re.findall(r"\(|\)", exp)
    if res.count('(') != res.count(')'):
      print("表達式不正確!??!")
      print("括號不匹配:", res)
      return False
    # 運算符檢測
    res = re.findall(r"[\-\+/]{2,}|\*{3,}", exp)
    if res:
      print("表達式不正確!??!")
      print("運算符有誤:", res)
      return False
    # 小數(shù)點位置檢測
    res = re.findall(r"(^(?<=[0-9])?\.\d+)|(\.\d*?\.)|\.(\D|$)", exp)
    if res:
      print("表達式不正確!?。?)
      print("小數(shù)點位置有誤:", res)
      return False
    return True
def main():
  simpleCalc = SimpleCalc()
  while True:
    exp = input("請輸入一個正確的表達式(退出請輸入t):\n")
    if exp == 't':
      break
    if simpleCalc.check(exp):
      print('=',eval(exp))
    else:
      continue
if __name__ == '__main__':
  main()

輸出:

請輸入一個正確的表達式(退出請輸入t):
1*2*((1+2)/(2+3)+1)*5.1-3+2**2
[]
= 17.32
請輸入一個正確的表達式(退出請輸入t):
12+a
['a']
表達式不正確?。。?br /> 輸入了非法字符: ['a']
請輸入一個正確的表達式(退出請輸入t):

PS:這里再為大家提供2款非常方便的正則表達式工具供大家參考使用:

JavaScript正則表達式在線測試工具:
http://tools.jb51.net/regex/javascript

正則表達式在線生成工具:
http://tools.jb51.net/regex/create_reg

更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python正則表達式用法總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設(shè)計有所幫助。

相關(guān)文章

  • Python數(shù)據(jù)類型之String字符串實例詳解

    Python數(shù)據(jù)類型之String字符串實例詳解

    這篇文章主要介紹了Python數(shù)據(jù)類型之String字符串,結(jié)合實例形式詳細講解了Python字符串的概念、定義、連接、格式化、轉(zhuǎn)換、查找、截取、判斷等常見操作技巧,需要的朋友可以參考下
    2019-05-05
  • 15款Python編輯器的優(yōu)缺點,別再問我“選什么編輯器”啦

    15款Python編輯器的優(yōu)缺點,別再問我“選什么編輯器”啦

    這篇文章主要介紹了15款Python編輯器的優(yōu)缺點,別再問我“選什么編輯器”啦,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2020-10-10
  • PyTorch兩種安裝方法

    PyTorch兩種安裝方法

    這篇文章主要介紹了PyTorch兩種安裝方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • PyCharm vs VSCode,作為python開發(fā)者,你更傾向哪種IDE呢?

    PyCharm vs VSCode,作為python開發(fā)者,你更傾向哪種IDE呢?

    這篇文章主要介紹了PyCharm和vscode作為python ide的優(yōu)劣,幫助你選擇適合自己的ide,感興趣的朋友可以了解下
    2020-08-08
  • 詳解python執(zhí)行shell腳本創(chuàng)建用戶及相關(guān)操作

    詳解python執(zhí)行shell腳本創(chuàng)建用戶及相關(guān)操作

    這篇文章主要介紹了python執(zhí)行shell腳本創(chuàng)建用戶及相關(guān)操作,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Django處理多用戶類型的方法介紹

    Django處理多用戶類型的方法介紹

    這篇文章主要給大家介紹了關(guān)于Django處理多用戶類型的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用Django具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Keras多線程機制與flask多線程沖突的解決方案

    Keras多線程機制與flask多線程沖突的解決方案

    這篇文章主要介紹了Keras多線程機制與flask多線程沖突的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • pytorch sampler對數(shù)據(jù)進行采樣的實現(xiàn)

    pytorch sampler對數(shù)據(jù)進行采樣的實現(xiàn)

    今天小編就為大家分享一篇pytorch sampler對數(shù)據(jù)進行采樣的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • 使用requests庫制作Python爬蟲

    使用requests庫制作Python爬蟲

    Requests是用python語言基于urllib編寫的,采用的是Apache2 Licensed開源協(xié)議的HTTP庫,Requests它會比urllib更加方便,可以節(jié)約我們大量的工作。一句話,requests是python實現(xiàn)的最簡單易用的HTTP庫,建議爬蟲使用requests庫。
    2018-03-03
  • MacBook m1芯片采用miniforge安裝python3.9的方法示例

    MacBook m1芯片采用miniforge安裝python3.9的方法示例

    這篇文章主要介紹了MacBook m1芯片采用miniforge安裝python3.9的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04

最新評論

商洛市| 太保市| 即墨市| 黄龙县| 荔波县| 平顶山市| 孟州市| 明水县| 鄯善县| 绵阳市| 壶关县| 丰宁| 乃东县| 涞源县| 道孚县| 彩票| 万全县| 鄄城县| 巩义市| 钦州市| 江华| 壤塘县| 弥渡县| 和政县| 岚皋县| 甘谷县| 灵山县| 东兰县| 镇平县| 长垣县| 南安市| 乐平市| 银川市| 保康县| 论坛| 上林县| 明溪县| 都安| 汨罗市| 宁蒗| 威远县|