• 计算机二级python 知识点篇(数据类型)


    计算机二级python 知识点篇(数据类型)

    基本数据类型

    数字类型

    Python语言提供3种数字类型: 整数类型、 浮点数类型和复数类型, 分别对应数学中的整数、 实数和复数。

    整数类型

    进制种类 引导符号 描述
    十进制 默认情况, 例: 1010,-1010
    二进制 0b 或 0B 由字符0和1组成, 例: 0b1010, 0B1010
    八进制 0o 或 0O 由字符0到7组成, 例: 0o1010, 0O1010
    十六进制 0x 或 0X 由字符0到9、 a到f或A到F组成, 例: 0x1010

    浮点数类型

    • 浮点数有2种表示方法: 十进制形式的一般表示和科学计数法表示。 除十进制外, 浮点数没有其他进制表示形式 -1.3e3 -2.5E5

    复数类型

    • Python语言中, 复数可以看作是二元有序实数对(a, b),表示为: a + bj, 其中, a是实数部分,简称实部,b是虚数部分,简称虚部。 虚数部分通过后缀“J”或者“j”来表示。 需要注意, 当b为1时,1不能省略, 即 1j表示复数, 而j则表示Python程序中的一个变量。
    • 复数类型中实部和虚部都是浮点类型, 对于复数z, 可以用z.real和z.imag分别获得它的实数部分和虚数部分

    Python提供了9个基本的数值运算操作符

    操作符 描述
    x + y x与y之和
    x - y x与y之差
    x * y x与y之积
    x / y x与y之商
    x // y x与y之整数商, 即: 不大于x与y之商的最大整数
    x % y x与y之商的余数, 也称为模运算
    -x x的负值, 即: x*(-1)
    +x x本身
    x**y x的y次幂, 即: xy

    数值运算可能改变结果的数据类型, 类型的改变与运算符有关, 有如下基本规则:

    • 整数和浮点数混合运算, 输出结果是浮点数;
    • 整数之间运算, 产生结果类型与操作符相关, /运算的结果是浮点数;
    • 整数或浮点数与复数运算, 输出结果是复数。

    内置函数

    函数 描述
    abs(x) x的绝对值
    divmod(x, y) (x//y, x%y), 输出为二元组形式(也称为元组类型)
    pow(x, y[, z]) (x**y)%z, [..]表示该参数可以省略, 即: pow(x,y), 它与x**y相同
    ound(x[, ndigits]) 对x四舍五入, 保留ndigits位小数。 round(x)返回四舍五入的整数值
    max(x1, x2, …, xn) x1, x2, …, xn的最大值, n没有限定
    min(x1, x2, …, xn) x1, x2, …, xn的最小值, n没有限定

    字符串类型

    Python语言转义符:

    • 表示换行、 表示反斜杠、 '表示单引号、 "表示双引号、 表示制表符(TAB) 等。

    字符串操作符

    针对字符串, Python语言提供了几个基本操作符 :

    操作符 描述
    x + y 连接两个字符串x与y
    x * n 或 n * x 复制n次字符串x
    x in s 如果x是s的子串, 返回True, 否则返回False
    >>>name = "Python语言" + "程序设计"
    >>>name
    'Python语言程序设计'
    >>>"等级考试!" * 3
    '等级考试!等级考试!等级考试!'
    >>>"语言" in name
    True
    >>>'Y' in name
    False
    

    字符串处理函数

    Python语言提供了一些对字符串处理的 内置函数:

    函数 描述
    len(x) 返回字符串x的长度, 也可返回其他组合数据类型的元素个数
    str(x) 返回任意类型x所对应的字符串形式
    chr(x) 返回Unicode编码x对应的单字符
    ord(x) 返回单字符x表示的Unicode编码
    hex(x) 返回整数x对应十六进制数的小写形式字符串
    oct(x) 返回整数x对应八进制数的小写形式字符串
    bin(x) 返回整数x对应二进制数小写形式字符串
    >>>len("全国计算机等级考试Python语言科目")
    19
    >>>chr(10000)
    '✐‘
    >>>hex(1010)
    '0x3f2'
    

    字符串处理方法

    方法 描述
    str.lower() 返回字符串str的副本, 全部字符小写
    str.upper() 返回字符串str的副本, 全部字符大写
    str.split(sep=None) 返回一个列表, 由str根据sep被分割的部分构成
    str.count(sub) 返回sub子串出现的次数
    str.replace(old, new) 返回字符串str的副本, 所有old子串被替换为new
    str.center(width, fillchar) 字符串居中函数, fillchar参数可选
    str.strip(chars) 从字符串str中去掉在其左侧和右侧chars中列出的字符
    str.join(iter) 将iter变量的每一个元素后增加一个str字符串
    # split()
    >>>"Python is an excellent language.".split()
    ['Python', 'is', 'an', 'excellent', 'language.']
    >>>"Python is an excellent language.".split('a')
    ['Python is ', 'n excellent l', 'ngu', 'ge.']
    >>>"Python is an excellent language.".split('an')
    ['Python is ', ' excellent l', 'guage.']
    
    # count()
    >>>"Python is an excellent language.".count('a')
    3
    
    # replace()
    >>>"Python is an excellent language.".replace('a', '#')
    'Python is #n excellent l#ngu#ge.'
    >>>"Python is an excellent language.".replace('Python', 'C')
    'C is an excellent language.'
    
    # center()
    >>>"Python".center(20, "=")
    '=======Python======='
    >>>"Python".center(2, "=")
    'Python'
    
    # str.strip(chars)
    # 从字符串str中去掉在其左侧和右侧chars中列出的字符。 chars是一个字符串,其中出现的每个字符都会被去掉。
    >>>"   ==Python==   ".strip(' ')
    '==Python=='
    >>>" ==Python== ".strip(' =')
    'Python'
    >>>" ==Python== ".strip(' =n')
    'Pytho'
    
    # str.join(iter)中iter是一个具备迭代性质的变量, 该方法将str字符串插入iter变量的元素之间, 形成新的字符串
    >>>" ".join('PYTHON')
    'P Y T H O N'
    >>>",".join('12345')
    '1,2,3,4,5'
    >>>",".join(['1', '2', '3', '4', '5'])
    '1,2,3,4,5' 
    
    

    format()方法的使用

    • 字符串format()方法的基本使用格式是:

       <模板字符串>.format(<逗号分隔的参数>)
      
    >>>"{}曰: 学而时习之, 不亦{}。 ".format("孔子","说乎")
    '孔子曰: 学而时习之, 不亦说乎。 '
    >>>"{1}曰: 学而时习之, 不亦{0}。 ".format("说乎","孔子")
    '孔子曰: 学而时习之, 不亦说乎。 '
    
    
    • format()方法的格式控制
      format()方法中模板字符串的槽除了包括参数序号, 还可以包括格式控制信息。
      {<参数序号>: <格式控制标记>}
      其中, 格式控制标记用来控制参数显示时的格式 。 格式
      控制标记包括:<填充><对齐><宽度><.精度><类型> 6个字段,这些字段都是可选的,可以组合使用
    >>>s = "等级考试"
    >>>"{:25}".format(s) #左对齐, 默认
    '等级考试               '
    >>>"{:^25}".format(s) #居中对齐
    '          等级考试        '
    >>>"{:>25}".format(s) #右对齐
    '                  等级考试'
    >>>"{:*^25}".format(s) #居中对齐且填充*号
    '**********等级考试***********'
    >>>"{:+^25}".format(s) #居中对齐且填充+号
    '++++++++++等级考试+++++++++++'
    >>>"{:十^25}".format(s) #居中对齐且填充汉字“十”
    '十十十十十十十十十十等级考试十十十十十十十十十十十'
    >>>"{:^1}".format(s) #z指定宽度为1, 不足变量s的宽度
    '等级考试
    
    

    <.精度>由小数点(.) 开头。 对于浮点数, 精度表示小数部分输出的有效位数。对于字符串, 精度表示输出的最大长度。 小数点可以理解为对数值的有效截断

    >>>"{:.2f}".format(12345.67890)
    '12345.68'
    >>>"{:>25.3f}".format(12345.67890)
    ' 12345.679'
    >>>"{:.5}".format("全国计算机等级考试")
    '全国计算机'
    

    <类型>表示输出整数和浮点数类型的格式规则。
    对于整数类型, 输出格式包括6种:
    • b: 输出整数的二进制方式;
    • c: 输出整数对应的Unicode字符;
    • d: 输出整数的十进制方式;
    • o: 输出整数的八进制方式;
    • x: 输出整数的小写十六进制方式;
    • X: 输出整数的大写十六进制方式;

    >>>"{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(425)
    '110101001,Ʃ,425,651,1a9,1A9'
    

    对于浮点数类型, 输出格式包括4种:
    • e: 输出浮点数对应的小写字母e的指数形式;
    • E: 输出浮点数对应的大写字母E的指数形式;
    • f: 输出浮点数的标准浮点形式;
    • %: 输出浮点数的百分形式。

    >>>"{0:e},{0:E},{0:f},{0:%}".format(3.14)
    '3.140000e+00,3.140000E+00,3.140000,314.000000%'
    >>>"{0:.2e},{0:.2E},{0:.2f},{0:.2%}".format(3.14) # 对比输出 
    '3.14e+00,3.14E+00,3.14,314.00%'
    

    数据类型转换

    • Python语言提供type(x)函数对变量x进行类型判断, 适用于任何数据类型
    n = eval(input('请输入一个数字:'))
    if type(n) == type(123):
    print("输入的数字是整数。 ")
    elif type(n) == type(11.3):
    print("输入的数字是浮点数。 ")
    else:
    print("无法判断输入类型。 ")
    
    • 数值运算操作符可以隐式地转换输出结果的数字类型, 例如, 两个整数采用运算符“/”的除法将可能输出浮点数结果。
    • 此外, 通过内置的数字类型转换函数可以显式在数字类型之间进行转换
    函数 描述
    int(x) 将x转换为整数, x可以是浮点数或字符串
    float(x) 将x转换为浮点数, x可以是整数或字符串
    str(x) 将x转换为字符串, x可以是整数或浮点数
  • 相关阅读:
    Servlet中isCommitted含义及发生的条件
    戏说java web开发中的listener和filter
    Android中以JAR形式封装控件或者类库
    华为总裁在“2012实验室干部与专家座谈会”上的发言!(转)
    C#进行Visio二次开发
    我是谁,从哪里来,将要到哪里去?
    LTE相关网元功能
    走出柏拉图的“洞穴”
    LTE的协议结构
    被联通欠款拖死,被移动集采玩死
  • 原文地址:https://www.cnblogs.com/BlogOfEr/p/11433448.html
Copyright © 2020-2023  润新知