栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python类型,运算符,简单明了

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python类型,运算符,简单明了

目录

一、类型

类型intcomplex    复数floatstringboolNone

字符串类型

其他类型

转义字符:

数据类型转换:

二、运算符

三、流程语句

条件语句

循环语句

    小tips:

补充:


一、类型

类型
int
complex    复数
float
string
bool
None

可变数据类型:list(列表)、dict(字典)、set(集合,不常用)

不可变数据类型:数值类型(int、float、bool)、string(字符串)、tuple(元组)


complex:
    c1 = 12 + 0.2j

字符串类型


    print输出拼接:不同类型可以逗号(,)拼接
               相同类型可以加号(+)拼接
               不同类型可以使用format拼接
    切片:变量[头下标:尾下标:步长]
字符串:
    sort():列表默认从小到大排序
    reverse():反转列表
    input():输入的是字符串类型
    print():输出括号内的内容
    用+号拼接,要都是字符串
    用format拼接,任何类型都可以
    find():查找字符串,有该字符串则返回第一个字符串所在位置的最左端索引,没有则返回-1。
                    使用语法:  源字符串.find.(要找的字符串)
    len():计算并返回字符串长度。
                    使用语法:  保存字符串长度的变量=len(目标字符串变量或字符串)
    upper():将所有字符转换为大写。
    lower():将所有字符转换为小写。
    title():将字符串所有首字母变大写。
    capitalize():将字符串首字母大写
    strip():删除字符串两侧全部空格(不包含内部);或删除两侧指定字符。
                    使用语法:strip_string1 = source_string.strip()
                                     string_strip2 = source_string.strip(target_char)
                                     char_hello_world = hello_world.strip('TH *')     区分大小写的删除
    replace():替换原有字符串为给定字符串。
                    使用语法: 源字符串.replace.(被替换的旧字符串,新字符串)
    split():将一个字符串按指定分隔符分割为字符列表。
                     使用语法:源字符串.split(分隔符)
                     如有source_string = '1+2+3+4+5',执行print(source_string.split('+')),则输出['1', '2', '3', '4', '5']
    format:拼接字符串
    变量=字符串.format()
    s1="hello{} {} {}{}".format("张三","李四","王五","赵六")
    s1="hello{0} {1} {2}{3}".format("张三","李四","王五","赵六")
    s1="hello{a} {b} {c}{d}".format(b="张三",a="李四",c="王五",d="赵六")
    s1="hello{a} {b} {c}{d}".format(b="张三",a=True,c=20,d="赵六")

声明变量时,同时声明类型:
    x = str("Hello World")

其他类型


[ ]    (list列表)    a=[7,2,1,4,5],a[-1]是最后一个,a[-len(a)]是第一个
    可以重复,类型可以不一致,下标从0开始有序
    大于len(a)的下标,
    切片,a[i,j],包含 a[i] 不包含 a[j]
    a[1:5]    切出[2,1,4,5]
    a[1:]    切出[2,1,4,5]
    a[:]    切出全部
    c=a[:2]+(a[-2:len(a)])    切出[7,2,4,5]
    增
    a.append('lisi')    在list尾部插入数据
    a.insert(1,'33')    在a[1]位置插入数据,a[1]原本的数据往后移
    a.pop(0)        通过下标删除元素,删除a[0]
    a.remove(1)    通过元素删除,删除找到的第一个,删除a[2]
    a[0]=99        修改元素
    a.reverse        反转列表,返回值为None
    a.sort()        默认升序排序(要列表数据类型一致,字符按第一个)
    a.count(元素)    返回元素在a中出现的次数
    a.index(元素)    返回元素在a中首次出现的下标
    a.clear()        清空列表
多维容器        和 list 一致
    L=[[1,2],[],[ [] ,[]] ]    没有定义的列表里,没有值
    len(L)        返回3,数组长度
    len(L[1])        返回0
( )    (tuple元组)    s=(12,11,14),下标和 列表 一样
    可以重复,类型可以不一致,下标从0开始有序,不能变化
    不能增删改。安全
    s.count(元素)    返回元素在s中出现的次数
    s.index(元素)    返回元素在s中首次出现的下标    
{ }    (dict字典)    dict={'name':'zhangsan','lisi':'heihei','age':18,1:12}
    键不重复,一般使用字符串作为键(也可以使用其他类型),没有下标无序
    a=dict()        生成字典a
    b={}        生成字典b
    a=dict(zip([1,2,3],['a','b','c']))    定义的时候,生成{1: 'a', 2: 'b', 3: 'c'}字典。里面的是集合
    a=dict(zip((1,2,3),('a','b','c','d')))    定义的时候,生成{1: 'a', 2: 'b', 3: 'c'}字典
    cc=dict(l='a',h='b',b=4)        定义的时候,生成字典,此处关键字只能为变量
    dict['name']    查询键为'name'的值
    "name"in dict    查询键为'name'的值是否存在dict中,返回值为bool值。(not in相反)
    dict[2]='hello'    增加键值对
    d[1]=i=33    可以新增键值对的 值为变量,但变量必须是已赋值的,或是当场赋值
    dict[1]="nana"    将键为1的值改为"nana"
    'name' in counts.keys()    返回True,判断name是否在键中
    copy()函数
        d2=d1        引用拷贝,d1和d2指向同一个内存地址。改d2动d1
        d3=d1.copy    浅拷贝,d3和d2的父对象相互独立,但子对象指向同一个内存地址。
            d1、d2改动新增,互不影响。如果d1中元素是列表,新增,一样改变
            string不改变。因为string是不可变的
        d4=copy.copy(d1)深拷贝,父对象,子对象都相互对立
            d1、d2改动新增,互不影响。如果d1中元素是列表,新增,一样改变
    d1.clear()        删除字典d1中所有的键值对,返回值为None
    d1.formkeys(iterable,value=None,/)    创建成一个新字典,以可以迭代对象中元素做字典的键,value为字典所有对应的初始值,默认为None
        iterable    可迭代的对象。如列表、元组、集合、字典、字符串等
        value    可迭代的对象或数字、字母。如列表、元组、集合、字典、字符串等

    d.get(1)        返回键为 1 的值。若没有 1 键,则返回d的默认值None
    d.get('c',66)    若c不存在d中,返回66。但不在d内新增c
    d.items( )        返回字典d中所有键值对。返回类型dict_items
    d.keys()    返回字典d中所有键。返回类型dict_keys
    d.values()        返回字典d中所有值。返回类型dict_values
    d.pop("name"[,n])    删除键为'name'的键值对。返回值为"name"的值
            如果没有"name",返回n值。d中不会新增键值对
            如果没有"name",且没有n值,报错    
    d.popitem()    随机取出d中一个键值对,以元组 (key,value) 形式返回
            同时删除d中该键值对
    d.setdefault(i,j)    如果字典 d 存在 i 键,返回 d[i] ,并将 d[i] 的值设为 j 。
            d中不存在 i 键,返回 j ,将d[i] 的值设为 j,并保存在 d 中
    d.update(a)    将a中所有对象添加到字典d中
            a可以为:
            d.update({23:12,34:11})一个字典
            d.update(ni=12)    关键字    
            一个包含一个及一个以上元组的列表
            一个包含一个及一个以上列表的元组
            一个zip( )    函数,如zip(['a','b'],[1,2])
    list(d)        将字典d的键转成列表

{ }    (set集合)    set1={7,3,2,1,'n',3,'ni'}
    没有下标无序,不可重复,类型可以不一致
    list(集合)        将集合转为列表
    set(列表)        将列表转为集合
    set1&s        返回set1 和s 的交集
    set1|s        返回set1 和s 的并集
    set1-s        返回set1 和s 的差集
    set1^s        返回不同时存在于两边的集合

转义字符:


    t    4个空格
    n    换行
    \t    取消转义,显示t
    r"t"    取消转义,显示t

数据类型转换:


    complex(-1)
    bool(None)    结果为False
    b1=bool('')    结果为False
    bool(0.0)        结果为False
    str(123)

二、运算符

算数运算符
    加减乘除,取余,幂次方(**)
    /=    除法运算符
    **=    幂赋值运算符
    %=    取模赋值运算符
    //=    取整赋值运算符
关系运算符
    >=    <=    ==    !=
逻辑运算符
    and    or    not
身份运算符
    is    is 是判断两个标识符是不是引用自一个对象
        x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
    is not    is not 是判断两个标识符是不是引用自不同对象
        x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。
成员运算符
    in     not in

三、流程语句



条件语句


    if  条件:
        执行语句
    elif 条件:
        执行语句
    else:
        执行语句


循环语句


    while  条件:
        循环体
    continue    直接继续下一轮循环
    break    结束整个循环过程
    pass     不做任何事情,一般用做占位语句
    for 循环:
    for i in range(1,9):    i包括1,不包括9


    
小tips:

1:' 字符或字符串':需要用单引号引起来。会区分中英文符号,如果用中文单引号会出错。
2:会区分大小写
3:用“+”来合并两字符
     如result_string = source_string1 + source_string2
         full_name = first_name + " " + last_name(注意字符串需要单引号引起来,如果是包含了字符串的变量则不需要)
4:定义函数以def开头,后面跟着函数名、圆括号()、括号中的参数、冒号。
5:python函数主要包括必选参数、默认参数、可变参数、关键字参数。
     使用的过程中是有顺序的,顺序依次应该是必选参数、默认参数、可变参数和关键字参数。

print("Hello World!", end ="") #end里没有空格    不换行输出
输出语句中不能有赋值
使用反斜杠 来实现多行语句


补充:

控制浮点数输出的位数,一般有三种方法:

① 使用round函数,用法为:round( x [, n] ),x为浮点数,n为保留的小数位数参数是可选的如果不写
那么默认不保留小数。
    r1=4.575
    r2=4.585
    print(round(r1,2))    值为4.58
    print(round(r2,2))    值为4.58
    如果要取舍的下一位是5,则要看5之前的数是 奇 还是 偶
    偶数:直接取舍,不进行四舍五入
    奇数:向上取数,即进行四舍五入
② 利用"%nf"输出n位小数
    print(  "%.2f" % a   )
    对于5的规则,同上
③ 使用format函数格式化数字输出,format函数中使用一个大括号表示需要填充的参数,:后面可以规
定数字的精度与类型
    "{:.2f}".format(a)    #控制长度,小数点后三位,四舍五入
    对于5的规则,同上

超过17位的精度分析:
python默认的是17位精度,也就是小数点后16位,但是这里有一个问题,就是当我们的计算需要使用更
高的精度(超过16位小数)的时候该怎么做呢?
高精度使用decimal模块,配合getcontext
decimal 模块默认精度是17位,可以通过修改 getcontext().prec 修改精度的值
    a=decimal.Decimal(1/3)    #默认精度28,输出精度54
    a=decimal.Decimal(1)/(3)    #默认精度28,输出精度28
    a=decimal.Decimal(1)/decimal.Decimal(3)    #默认精度28,输出精度28
    decimal.getcontext()    #查看详细信息,默认精度28,prec=28

    decimal.getcontext().prec=100    #设置精度为100
    a=decimal.Decimal(1/3)    #设置精度100,输出精度54
    a=decimal.Decimal(1)/(3)    #设置精度100,输出精度100
    a=decimal.Decimal(1)/decimal.Decimal(3)    #输出精度为100


    


random.randint(0,9)    取一个 [0-9] 的随机整数
random.randrange(1,9,2)    获得 [1,9) 之间,步长为2,的随机整数。[1,3,5,7]
random.random()        获得 [0,1) 之间的随机小数
math模块的ceil(x):取大于或者等于x的最小整数。向上取整。
math模块的floor(x):取小于或者等于x的最大整数。向下取整

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/923683.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号