zoukankan      html  css  js  c++  java
  • python的基本知识点

    一.数据类型

    1.整数
    2.浮点数
    3.字符串
    4.布尔值:True/False
    5.空值:None

    二.变量

    变量名必须是大小写英文、数字和_的组合,且不能以数字开头

    三.常量

    全部大写的变量名表示常量,python没有一种机制保证常量不能被修改.
    PI = 3.14156

    四.特殊的地板除 //

    // 除法只取结果的整数部
    如:
    10 // 3
    输出3

    五.字符串和编码

    1.编码的发展:

    最开始ASCII(1个字节),存储127个字符(字母和一些符号).遇到中文或其他国家的文字时,出现了乱码,为了解决这个问题,又出现了Unicode编码(2个字节表示一个字符,特殊字符用到4个字节).但因为通常Unicode用2个字节表示一个字符,这导致了它比较占用空间,比如A,这其实可以用一个字节就能表示.于是出现了编码转化为“可变长编码”的UTF-8编码,UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。

    在计算机内存中统一用Unicode编码,但需要保存或传输的时候,就转换为utf-8编码.

    2.python的字符串是Unicode编码

    ord()函数获取字符的整数表示
    chr()函数把编码转换为对应的字符

    print(ord('夏'))
    print(chr(20013))
    

      

    输出:
    22799

    如果知道字符的整数编码,还可以用十六进制这么写

    print(hex(ord('中')))
    print(hex(ord('文')))
    print('u4e2du6587')
    

      

    输出:
    0x4e2d
    0x6587
    中文

    3.字节

    Python对bytes类型的数据用带b前缀的单引号或双引号表示:
    x = b'ABC'

    bytes中的每个字符只占用一个字节

    4.字符和字节的相互转换

    (1).字符转字节

    以Unicode表示的str通过encode()方法可以编码为指定的bytes,如:

    print('ABC'.encode('ascii'))
    print('中文'.encode('utf-8'))
    

      

    输出:
    b'ABC'
    b'xe4xb8xadxe6x96x87'

    (2).字节转字符:

    通过字节的decode实现

    print(b'ABC'.decode('ascii'))
    print(b'xe4xb8xadxe6x96x87'.decode('utf-8'))
    

      

    输出:
    ABC
    中文

    5.常用的len函数:

    (1).计算字符串长度
    (2).计算字节长度
    (3).计算列表/元组等长度

    如:

    print(len(b'xe4xb8xadxe6x96x87'))
    print(len(b'abc'))
    print(len('ok中文'))
    print(len([0, 1]))
    

      

    输出:
    6
    3
    4
    2

    应当始终坚持使用UTF-8编码对str和bytes进行转换

    6.格式化:

    (1).% 元组,如

    "%s world, my name is %s, age: %d" % ('hello', 'rorshach', 14)
    "%s word" % 'hello'

    常见占位符:
    占位符   替换内容
    %d     整数
    %f     浮点数
    %s     字符串
    %x     十六进制整数

    (2).format

    "{0} world, my name is {1}, age: {2}".format('hello', 'rorshach', 14)

    六.判断

    python使用and做与运算,使用or做或运算;对于非零数值、非空字符串、非空list等,就判断为True,否则为False

    如:

    a = [1]
    if a:
        print('right')
    else:
        print('wrong')
    

      

    输出:
    wrong

    示例代码:

    a = 1
    b = 2
    
    if a == 1 and b ==2:
        print('a=1,b=2')
    elif a == 1 or b == 2:
        print('a=1 or b=2')
    else:
        print('no')
    

      

    七.循环

    两种循环:

    1.for ... in

    如:

    for x in range(10):
        print(x)

    2.while:

    x = 0
    while x <= 9:
        print(x)
        x += 1
    

      

    注:python没有++,--等自增/自减运算

    3.break:跳出循环

    4.continue:忽略本次,继续下一次循环

  • 相关阅读:
    打印九九乘法表
    PAT (Basic Level) Practice (中文) 1091 N-自守数 (15分)
    PAT (Basic Level) Practice (中文)1090 危险品装箱 (25分) (单身狗进阶版 使用map+ vector+数组标记)
    PAT (Basic Level) Practice (中文) 1088 三人行 (20分)
    PAT (Basic Level) Practice (中文) 1087 有多少不同的值 (20分)
    PAT (Basic Level) Practice (中文)1086 就不告诉你 (15分)
    PAT (Basic Level) Practice (中文) 1085 PAT单位排行 (25分) (map搜索+set排序+并列进行排行)
    PAT (Basic Level) Practice (中文) 1083 是否存在相等的差 (20分)
    PAT (Basic Level) Practice (中文) 1082 射击比赛 (20分)
    PAT (Basic Level) Practice (中文) 1081 检查密码 (15分)
  • 原文地址:https://www.cnblogs.com/itfenqing/p/10253421.html
Copyright © 2011-2022 走看看