• Python中 各种数字类型的判别(numerica, digital, decimal)


    一、 全角和半角

            全角:是指一个全角字符占用两个标准字符(或两个半角字符)的位置。 全角占两个字节。 汉字字符和规定了全角的英文字符及国标GB2312-80中的图形符号和特殊字符都是全角字符。在全角中,字母和数字等与汉字一样占据着等宽的位置。 

            半角:是指一个字符占用一个标准的字符位置。半角占一个字节。 半角就是 ASCII 方式的字符,在没有汉字输入法起作用的时候,输入的字母、数字和字符都是半角的。 

            Tip:每个半角字符只占用一字节的空间(一字节有8位,共256个编码空间)。汉语、日语、及朝鲜文等象形字语言的字库量远大于256个编码空间,所以改用两个字节来储存。同时,由于中日韩等象形文字的书写习惯,如果统一使用全角字符的话,排列起来也显得整齐。为了排列整齐,英文和其它拉丁文的字符和标点也提供了全角格式。

    使用效果如下图 
        全角:

            

    半角:

             

        以上内容转载自:https://blog.csdn.net/someday1314/article/details/69934312

    总结:

        英文全部半角,占用一个字符位;

        中文可选半角,全角(Shift+Space),全角占用两个字符位。

                               标点的切换用快捷键(Shift+。)

    二、 isdigital,ismumerical,isdecimal的区别

    num = ['1', '1', 'Ⅷ', '一', b'50']
    
    decimal = [i for i in num[:4] if i.isdecimal()]     # 仅单字节、双字节数字,byte数字报错
    digital = [i for i in num if i.isdigit()]           # 非汉子
    numeric = [i for i in num[:4] if i.isnumeric()]     # byte数字报错
    
    print(decimal,digital,numeric, sep='
    ')

        运行结果:

    ['1', '1']
    ['1', '1', b'50']
    ['1', '1', 'Ⅷ', '一']
    

    结论:

        1. isdigital()      --- 除汉子外
        2. isnumeric()   --- byte数字
        3. isdecimal()    --- 仅单、双字节数字

  • 相关阅读:
    OpenWrt编译系统(1)之make之前
    IoT设备WiFi配网及现状
    Linux系统时间、时区、夏令时杂谈
    串口通信概念整理
    socket编程进阶之路
    段错误
    gitlab将分支代码合并到master上
    dpkg 管理二进制包
    linux 命令关闭网络
    pwn之exp问题反馈和ASLR认知
  • 原文地址:https://www.cnblogs.com/geoffreyone/p/9899772.html
Copyright © 2020-2023  润新知