亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python正則表達(dá)式完成車牌號檢驗(yàn)的代碼實(shí)例

 更新時間:2024年02月19日 15:02:49   作者:青取之于藍(lán)但沒他藍(lán)  
這篇文章主要給大家介紹了關(guān)于python正則表達(dá)式完成車牌號檢驗(yàn)的相關(guān)資料,在Python中正則表達(dá)式是一種用于匹配和操作字符串的強(qiáng)大工具,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下

正則表達(dá)式:

對于車牌而言,選用的正則表達(dá)式是"^[京津滬渝冀豫云遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陜吉閩貴粵青藏川寧瓊A-Z]{1}[A-Z]{1}\s{1}[A-Z0-9]{4}[A-Z0-9掛學(xué)警港澳]{1}$",使用re模塊中的findall方法可以對輸入的車牌進(jìn)行合法性判定

對實(shí)驗(yàn)要求,可以大致拆分為以下幾個部分:

  • 設(shè)置主循環(huán):將文件以追加讀寫的方式打開,進(jìn)行合法性判斷、對非法的舍棄、合法中重復(fù)的位置定位,不重復(fù)的寫入、關(guān)閉文件保存
  • 合法性判斷:首先定義了一個正則表達(dá)式,并使用其進(jìn)行合法性判斷
  • 合法性重復(fù)性判斷:設(shè)立一個列表,使用append方法將每次輸入的字符都加入其尾,使用列表的count方法計(jì)算每次寫入的字符串是否有重復(fù),由于count會返回其在列表中的次數(shù),一旦次數(shù)超過1,我們就判定為重復(fù),屆時使用列表的index方法返回的坐標(biāo)+1即其在文本文件中第幾行出現(xiàn),打印出即可

實(shí)驗(yàn)測試結(jié)果如下:

可以看到輸入的車牌號可以為漢字也可以是全英文,對車牌號數(shù)字?jǐn)?shù)量不夠或車牌號輸入錯誤都會判定為輸入非法,而正確的非重復(fù)的會將其保存至文本文件里,正確的重復(fù)的將不會保存。

源代碼:

import re
paizi=[]
pattern_str = "^[京津滬渝冀豫云遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陜吉閩貴粵青藏川寧瓊A-Z]{1}[A-Z]{1}\s{1}[A-Z0-9]{4}[A-Z0-9掛學(xué)警港澳]{1}$"
def is_car_number(pattern, string):
    if re.findall(pattern, string):
        return 1
    else:
        return 2
if __name__ == '__main__':
    while True:
        string_str=input('輸入車牌號')
        fp_exercise4 = open(r'D:\浙理課程相關(guān)資料\2022-2023上\python\exercise4_test.txt', 'a+')

        if is_car_number(pattern_str, string_str)==2:
            print("輸入非法,請重新輸入")
        else:
            paizi.append(string_str)#加到列表中,用于判定重復(fù)
            if paizi.count(string_str)==2:#檢測到重復(fù)信號
                print("該車牌已經(jīng)存在!它在第{}行".format(paizi.index(string_str)+1))
            else:
                print("輸入正確,已保存!")
                fp_exercise4.write(string_str + '\n')
        fp_exercise4.close()

附包含新能源校驗(yàn):

新能源
組成:省份簡稱(1位漢字)+發(fā)牌機(jī)關(guān)代號(1位字母)+序號(6位),總計(jì)8個字符,序號不能出現(xiàn)字母I和字母O
* 通用規(guī)則:不區(qū)分大小寫,第一位:省份簡稱(1位漢字),第二位:發(fā)牌機(jī)關(guān)代號(1位字母)
* 序號位:
* 小型車,第一位:只能用字母D或字母F,第二位:字母或者數(shù)字,后四位:必須使用數(shù)字
* ---([DF][A-HJ-NP-Z0-9][0-9]{4})
* 大型車,前五位:必須使用數(shù)字,第六位:只能用字母D或字母F。
* ----([0-9]{5}[DF])

 /^([京津滬渝冀豫云遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陜吉閩貴粵青藏川寧瓊使領(lǐng)A-Z]{1}[a-zA-Z](([DF]((?![IO])[a-zA-Z0-9](?![IO]))[0-9]{4})|([0-9]{5}[DF]))|[京津滬渝冀豫云遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陜吉閩貴粵青藏川寧瓊使領(lǐng)A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9掛學(xué)警港澳]{1})$/

總結(jié) 

到此這篇關(guān)于python正則表達(dá)式完成車牌號檢驗(yàn)的文章就介紹到這了,更多相關(guān)python正則檢驗(yàn)車牌號內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python注釋詳解

    Python注釋詳解

    下面小編就為大家?guī)硪黄狿ython注釋詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • vscode和Anaconda安裝以及相關(guān)環(huán)境配置指南

    vscode和Anaconda安裝以及相關(guān)環(huán)境配置指南

    Anaconda是一個開源的python發(fā)行版本,是現(xiàn)在比較流行的python數(shù)據(jù)科學(xué)平臺,可以對python的科學(xué)包做到有效管理,這篇文章主要給大家介紹了關(guān)于vscode和Anaconda安裝以及相關(guān)環(huán)境配置指南的相關(guān)資料,需要的朋友可以參考下
    2023-11-11
  • Python的iOS自動化打包實(shí)例代碼

    Python的iOS自動化打包實(shí)例代碼

    這篇文章主要給大家介紹了關(guān)于Python的iOS自動化打包的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • Python接口傳輸url與flask數(shù)據(jù)詳解

    Python接口傳輸url與flask數(shù)據(jù)詳解

    這篇文章主要介紹了Python通過接口傳輸url與flask數(shù)據(jù),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-09-09
  • python3.6中anaconda安裝sklearn踩坑實(shí)錄

    python3.6中anaconda安裝sklearn踩坑實(shí)錄

    這篇文章主要介紹了python3.6中anaconda安裝sklearn踩坑實(shí)錄,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 使用Python實(shí)現(xiàn)VPN搭建的流程步驟

    使用Python實(shí)現(xiàn)VPN搭建的流程步驟

    VPN(虛擬私人網(wǎng)絡(luò))是一種有效的解決方案,可以幫助我們在網(wǎng)絡(luò)上匿名瀏覽,保護(hù)數(shù)據(jù)傳輸?shù)陌踩?雖然市面上有許多商業(yè)VPN服務(wù),但你也可以通過Python自己搭建一個簡單的VPN,本文將介紹如何用Python建立自己的VPN,需要的朋友可以參考下
    2024-06-06
  • Python?Opencv基于透視變換的圖像矯正

    Python?Opencv基于透視變換的圖像矯正

    這篇文章主要為大家詳細(xì)介紹了Python?Opencv基于透視變換的圖像矯正,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 跟老齊學(xué)Python之用Python計(jì)算

    跟老齊學(xué)Python之用Python計(jì)算

    做為零基礎(chǔ)學(xué)習(xí)Python,也就從計(jì)算小學(xué)數(shù)學(xué)題目開始吧。因?yàn)閺倪@里開始,數(shù)學(xué)的基礎(chǔ)知識列為肯定過關(guān)了。
    2014-09-09
  • 徹底卸載anaconda詳細(xì)教程(推薦!)

    徹底卸載anaconda詳細(xì)教程(推薦!)

    用anaconda更改我的python版本,就是出現(xiàn)了凍結(jié)無法更改等等之類的問題,擔(dān)心更新anaconda還是會出錯,于是打算卸載anaconda,重新下載一個安裝,下面這篇文章主要給大家介紹了關(guān)于徹底卸載anaconda的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • Python中使用matplotlib繪制mqtt數(shù)據(jù)實(shí)時圖像功能

    Python中使用matplotlib繪制mqtt數(shù)據(jù)實(shí)時圖像功能

    這篇文章主要介紹了Python中使用matplotlib繪制mqtt數(shù)據(jù)實(shí)時圖像,本代碼中publish是一個死循環(huán),數(shù)據(jù)一直往外發(fā)送,詳細(xì)代碼跟隨小編一起通過本文學(xué)習(xí)下吧
    2021-09-09

最新評論