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

使用Python實(shí)現(xiàn)區(qū)分I和L

 更新時(shí)間:2024年11月28日 09:32:06   作者:仙草哥哥  
最討厭分不清I與l,所以為了解決這個(gè)問題,這篇文章小編專門為大家介紹了如何使用Python實(shí)現(xiàn)區(qū)分這些混淆字符,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

分不清的I和l

今天,朋友讓我在游戲里面加他為好友,并且,他發(fā)送了自己的游戲ID給我。不過,由于這個(gè)游戲中不支持復(fù)制粘貼,所以說,我只能手動(dòng)輸入。

但是,當(dāng)我看到這個(gè)ID的時(shí)候,我頓感非常無語,這個(gè)ID大概是這樣的:

全是小寫的l與大寫的I組成的,在一些字體中,I與l根本看不出什么差別,這我怎么知道這個(gè)名字是什么???

我非常困惑:“你起這種名字干嘛?故意整我嗎?”

朋友表示很委屈:“不是啊,因?yàn)橛螒虿恢С帜涿?,但是高分段玩家又特別少,所以起一個(gè)正常名字很容易被認(rèn)出來導(dǎo)致被針對,所以說,我們高分段玩家就達(dá)成了共識,全都起帶有1,I,l的名字,讓別人沒辦法輕松認(rèn)出來,從而防止被針對。”

他好像說的也很有道理,但是,我該怎么區(qū)分出I與l呢?難道要一個(gè)一個(gè)復(fù)制下來去搜索對比嗎?

統(tǒng)計(jì)混淆字符

當(dāng)然不可能一個(gè)一個(gè)搜啦,我們應(yīng)該用python程序,一次統(tǒng)計(jì)出所有的混淆字符。

import re
from collections import defaultdict
 
 
confusable_chars = {
    'I': '大寫字母I',
    'l': '小寫字母l',
    '1': '數(shù)字1',
    '0': '數(shù)字0',
    'O': '大寫字母O',
    'o': '小寫字母o'
}
 
 
text = "IllllIl111llI11111"
 
 
def analyze_confusable_characters(text, confusable_chars):
    results = defaultdict(list)
    
    for i, char in enumerate(text):
        if char in confusable_chars:
            results[char].append(i)
 
    print("混淆字符統(tǒng)計(jì)分析:")
    for char, positions in results.items():
        print(f"字符 '{char}' ({confusable_chars[char]}) 出現(xiàn)次數(shù): {len(positions)}, 位置: {positions}")
    
    return results
 
 
results = analyze_confusable_characters(text, confusable_chars)

現(xiàn)在,我們就可以輕松的看到,他們都是什么了

分別標(biāo)記每個(gè)字符

標(biāo)記了每個(gè)字符的位置,有的時(shí)候可能仍然不方便輸入,因?yàn)槲铱偛荒芤粋€(gè)一個(gè)去數(shù)他們的位置吧(尤其是出現(xiàn)次數(shù)多的情況下),因此,為了方便輸入,我們應(yīng)該從頭到尾,把每一個(gè)字符依次標(biāo)記清楚。

confusable_chars = {
    'I': '大寫字母I',
    'l': '小寫字母l',
    '1': '數(shù)字1',
    '0': '數(shù)字0',
    'O': '大寫字母O',
    'o': '小寫字母o'
}
 
 
text = "IllllIl111llI11111"
 
 
def analyze_confusable_characters(text, confusable_chars):
    results = ""
    for idx, char in enumerate(text):
        if char in confusable_chars:
            results += f"第{idx + 1}個(gè)字符是:{confusable_chars[char]}\n"
        else:
            results += f"第{idx + 1}個(gè)字符是:{char}\n"
 
    return results
 
 
results = analyze_confusable_characters(text, confusable_chars)
print(results)

很好,現(xiàn)在我們只需要根據(jù)程序提示,依次輸入內(nèi)容即可:

如果你還有更多的字符容易搞混,例如分不清數(shù)字5和字母S的話,也可以通過擴(kuò)充混淆字符表,從而實(shí)現(xiàn)更多的混淆字符的區(qū)分,比如說:

confusable_chars = {
    'S': '大寫字母S',
    's': '小寫字母s',
    '5': '數(shù)字5',
    'u': '小寫字母u,不是變胖了的v',
    'v': '小寫字母v',
    '3': '數(shù)字3'
}

到此這篇關(guān)于使用Python實(shí)現(xiàn)區(qū)分I和L的文章就介紹到這了,更多相關(guān)Python區(qū)分I和L內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python正則表達(dá)式教程之三:貪婪/非貪婪特性

    Python正則表達(dá)式教程之三:貪婪/非貪婪特性

    這篇文章主要介紹了Python正則表達(dá)式中貪婪/非貪婪特性的相關(guān)資料,文中通過示例代碼介紹的很詳細(xì),對大家具有一定的參考價(jià)值,需要的朋友下面來一起看看吧。
    2017-03-03
  • 使用python獲取電腦的磁盤信息方法

    使用python獲取電腦的磁盤信息方法

    今天小編就為大家分享一篇使用python獲取電腦的磁盤信息方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • python入門:argparse淺析 nargs=''+''作用

    python入門:argparse淺析 nargs=''+''作用

    這篇文章主要介紹了python入門:argparse淺析 nargs='+'作用,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • python模塊之time模塊(實(shí)例講解)

    python模塊之time模塊(實(shí)例講解)

    下面小編就為大家?guī)硪黄猵ython模塊之time模塊(實(shí)例講解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-09-09
  • Python實(shí)現(xiàn)文件夾中文件名對比

    Python實(shí)現(xiàn)文件夾中文件名對比

    這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)文件夾中文件名與Excel中存在的文件名進(jìn)行對比,并進(jìn)行刪除操作,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-07-07
  • python進(jìn)程管理工具supervisor的安裝與使用教程

    python進(jìn)程管理工具supervisor的安裝與使用教程

    supervisor是用python寫的一個(gè)進(jìn)程管理工具,用來啟動(dòng),重啟,關(guān)閉進(jìn)程。下面這篇文章主要給大家介紹了關(guān)于python實(shí)現(xiàn)的進(jìn)程管理工具supervisor的安裝與使用的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-09-09
  • Python 切分?jǐn)?shù)組實(shí)例解析

    Python 切分?jǐn)?shù)組實(shí)例解析

    這篇文章主要介紹了Python 切分?jǐn)?shù)組實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • python utc datetime轉(zhuǎn)換為時(shí)間戳的方法

    python utc datetime轉(zhuǎn)換為時(shí)間戳的方法

    今天小編就為大家分享一篇python utc datetime轉(zhuǎn)換為時(shí)間戳的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python獲取秒級時(shí)間戳與毫秒級時(shí)間戳的示例代碼

    Python獲取秒級時(shí)間戳與毫秒級時(shí)間戳的示例代碼

    這篇文章主要介紹了Python獲取秒級時(shí)間戳與毫秒級時(shí)間戳的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Python機(jī)器學(xué)習(xí)NLP自然語言處理基本操作詞袋模型

    Python機(jī)器學(xué)習(xí)NLP自然語言處理基本操作詞袋模型

    本文是Python機(jī)器學(xué)習(xí)NLP自然語言處理系列文章,帶大家開啟一段學(xué)習(xí)自然語言處理 (NLP) 的旅程。本篇文章主要學(xué)習(xí)NLP自然語言處理基本操作之詞袋模型
    2021-09-09

最新評論

七台河市| 西畴县| 凯里市| 岳普湖县| 涿州市| 景德镇市| 汶川县| 大荔县| 潞西市| 丁青县| 大竹县| 连州市| 阿拉善盟| 平顺县| 鄂托克旗| 元氏县| 桂林市| 翁牛特旗| 日土县| 绩溪县| 芮城县| 陆川县| 宣化县| 泰安市| 四会市| 永宁县| 恩平市| 临泽县| 耒阳市| 嘉峪关市| 沁阳市| 织金县| 祥云县| 灵寿县| 乳山市| 玛多县| 黎川县| 米林县| 苗栗县| 阿拉善右旗| 丰城市|