zoukankan      html  css  js  c++  java
  • python数据类型以及方法

    1.变量

    1.1 变量类型:

     变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符

    1.2变量赋值

    Python中的变量赋值不需要类型声明。

    每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。

    每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

    a=1
    x=0.11
    y="string"
    print(a,x,y)

    可用=连续赋值多个变量 

    a=b=c=1
    print(a,b,c)

    多个对象创建多个变量

    a,b,c=1,3.4,"jack"
    print(a,b,c)

    思考程序:

    #AUTHER:LANIST
    name1="jack"
    name2=name1
    print(name1,name2)
    name2="rose"
    print(name1,name2)

    jack jack
    jack rose

     1.3定义变量规则

    变量名只能是字母,数字或下划线的组合且第一个字符不能是数字

    关键字不能声明为变量名:详细见上篇https://www.cnblogs.com/lanist/p/12592776.html

    2.字符串操作

    #AUTHER:LANIST
    
    a="{name} hsbao {ages}"
    
    print(a.count("a")) #字符串中a的数量
    print(a.center(20,"+"))#++hsbao+++开辟20个空间
    print(a.capitalize())#首字母大写
    print(a.encode(encoding="utf-8"))#将字符串编码
    print(a.expandtabs(tabsize=2))#在	的位置转换为空格,越大的空的越大
    print(a.endswith("c"))#判断字符串以什么结尾 true/false
    print(a.format(name="jack",ages="18"))#格式化输出
    dict={"name":"lanist","ages":"16"}
    print(a.format_map(dict))#字典方式格式化输出

    判断字符串

    b="linux"
    print(b.find("n"))#获取n的下标
    print(b.isdigit())#判断是否为数字
    print(b.index("x"))#获取索引
    print(b.isupper())#是否大写
    print(b.istitle())#判断首字母是否大写 Linux Is  vvv
    print("aaa".isidentifier())#判断是否合法标识符
    print("123".isdigit())#判断是否为数字
    print("zmh".isalpha())#判断是否为字母
    print("wq123q".isalnum()) #判断字符串是否为数字字母组合
    print("A".isdecimal())#判断是否为10进制
    print("qwe".islower())#判断是否为小写字母
    print("QWE".isupper())#判断是否为大写字母
    print("124".isprintable())#判断字符串是否可打印
    print("123".isalnum())#判断是否为数字
    print(" ".isspace())#判断是否为空格
    print("11".isnumeric())#检测字符串是否为数字组成例:汉字,罗马数字,全角,半角
    a1="abc"
    a2="123"
    print("a1".join(a2))#?
    print("abc".ljust(10,"="))#左对齐10个位置,不够=补全
    #Python strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
    #Python rstrip() 删除 string 字符串末尾的指定字符(默认为空格).
    print(" safbdfs ".rstrip()) print(" safbdfs ".lstrip()) print(" safbdfs ".strip())
    #做映射一一对应 q=str.maketrans("abc","123") print("bca".translate(q)) print("asd".upper())#小写转化为大写 print("sa".zfill(10))#不够10的用0填充在左边 print("zx".replace("x","X"))#替换 print("adwasv".rsplit("a"))#以a分隔 print("www.baidu".startswith("www"))#判断是否以www开头 print("i am a girl".splitlines())#转换为列表 print("abc".swapcase())#大小写转换

    3.字符编码

    3.1python中

    python2需要加

    #-*-coding:utf-8 -*-

    python3自带字符编码

    3.2字符编码介绍

    ASCII,主要用于显示现在英语和其他西欧语言,其最多只能用8位来表示(一个字节),即:2**8=256-1,所以呢,ASCII码最多只能表示255个字

    4.数据类型

    4.1整型

           在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1
      在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1

    a=1
    b=2
    print(a,b)
    print(type(a))
    #删除对对象a的引用,所以会出现错误
    del a,b
    del a
    print(a,b)

    4.2浮点型

    浮点型数值用于保存带小数点的数值,Python 的浮点数有两种表示形式:

    - 十进制形式:这种形式就是平常简单的浮点数,例如 5.12、512.0、0.512。浮点数必须包含一个小数点,否则会被当成整数类型处理。
    - 科学计数形式:例如 5.12e2(即 5.12×10^2)、5.12E2(也是 5.12 ×10^2)。

    必须指出的是,只有浮点型数值才可以使用科学计数形式表示。例如 51200 是一个整型值,但 512E2 则是浮点型值。

    #AUTHER:LANIST
    a=1.3
    b=2.5e3
    print(a,b)
    print(type(a))
    print(type(b))

    4.3布尔

    真或假  1或0

    #AUTHER:LANIST
    a=12
    if a:
        print("good")
    else:
        print("bad")
    
    结果为 good
    #如果字符串为空,则结果为bad

    4.4字符串

    字符串就是一系列数字,在python中,用引号引起来的都是字符串,其中的引号可以是单引号,也可以是双引号

    符串或串(String)是由数字、字母、下划线组成的一串字符。

    python的字串列表有2种取值顺序:

    从左到右索引默认0开始的,最大范围是字符串长度少1
    从右到左索引默认-1开始的,最大范围是字符串开头

    如果你要实现从字符串中获取一段子字符串的话,可以使用 [头下标:尾下标] 来截取相应的字符串,其中下标是从 0 开始算起,可以是正数或负数,下标可以为空表示取到头或尾。

    [头下标:尾下标] 获取的子字符串包含头下标的字符,但不包含尾下标的字符。取头不取尾

    #AUTHER:LANIST
    a="123456789"
    b=15.244e2  #15.244*100
    print(a[0:2])#字符串切片,“取头不取尾” 打印下表为0和1的
    print(a[:-1])#12345678
    print(a[-3:-1])#78
    print(a[2:7:3])#::3为步长  36
    print(b*2)
    print(a + "test")#字符串拼接

    使用方法修改字符串大小写

    #AUTHER:LANIST
    name="i am a girl"
    print(name.title())
    
    I Am A Girl

    集合类型的数据类型有 列表、元组及字典

    4.5列表

    列表用 []标识,是 python 最通用的复合数据类型。

    列表中值的切割也可以用到变量 [头下标:尾下标] ,就可以截取相应的列表,从左到右索引默认 0 开始,从右到左索引默认 -1 开始,下标可以为空表示取到头或尾。

    取头不取尾

    #AUTHER:LANIST
    list = ['runoob',777,3.14,'anliu',70.2]
    tinylist = [123,'john']
    print(list)
    print(list[0])
    print(list[1:3])
    print(list[2:])
    print(tinylist * 2)#重复打印tinylist两次
    print(list + tinylist)

    1.查看

    list = ['runoob',777,3.14,'anliu',70.2]
    print(list)
    print(list[1])
    print(list[:2])
    print(list[2:])
    good_list=[("锅巴",4),
    ("本子",10),
    ("液晶电视",4999),
    ("热水壶",105),
    ("电脑",5666)
    ]

    结果

    ['runoob', 777, 3.14, 'anliu', 70.2]
    777
    ['runoob', 777]
    [3.14, 'anliu', 70.2]

    2.操作

        
    list = ['runoob',777,3.14,'anliu',777]
    #查看索引
    print(list.index(777))
    #统计元素总数
    print(list.count(777))
    #翻转排序
    list.reverse()
    print(list)
    #AUTHER:LANIST
    list = ["jack","rose","tom","jerry"]
    list1=["abc","123"]
    #遍历整个列表
    for i in list:
        print(i)
    
    #把list1合并到list上
    list.extend(list1)
    print(list)
    print(list1)
    
    jack
    rose
    tom
    jerry
    ['jack', 'rose', 'tom', 'jerry', 'abc', '123']
    ['abc', '123']

    3.增

    #AUTHER:LANIST
    list = ["jack","rose","tom","jerry"]
    #在列表末尾添加
    list.append("apple")
    print(list)
    #在指定位置插入元素
    list.insert(0,"qqq")
    print(list)
    
    ['jack', 'rose', 'tom', 'jerry', 'apple']
    ['qqq', 'jack', 'rose', 'tom', 'jerry', 'apple']

    4.删

    如果你要存列表中删除一个元素,切不在以任何方式使用它,就用del语句;如果你要在删除元素之后还能继续使用它,就用pod()方法。

    #AUTHER:LANIST
    list = ["jack","rose","tom","jerry"]
    del list[1]
    print(list)
    #默认删除最后一个元素
    list.pop()
    print(list)
    #指定值删除元素
    list.remove("tom")
    print(list)

    5.改

    #AUTHER:LANIST
    list = ["jack","rose","tom","jerry"]
    list[1]="hello"
    print(list)

    4.6元组

    元组用 () 标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。

    #AUTHER:LANIST
    tuple = ('runoob', 786, 2.23, 'john', 70.2)
    tinytuple = (123, 'john')
    print(tuple)  # 输出完整元组
    print(tuple[0])  # 输出元组的第一个元素
    print(tuple[1:3])  # 输出第二个至第四个(不包含)的元素
    print(tuple[2:])  # 输出从第三个开始至列表末尾的所有元素
    print(tinytuple * 2)  # 输出元组两次
    print(tuple + tinytuple)  # 打印组合的元组

    4.7字典

    列表是有序的对象集合,字典是无序的对象集合。

    两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

    字典用"{ }"标识。字典由索引(key)和它对应的值value组成。

    #AUTHER:LANIST
    dict={"name":"jack","ages":"18","address":"us"}
    #取出键为name的值
    print(dict["name"])
    print(dict)
    # 输出所有键
    print(dict.keys())
    # 输出所有值
    print(dict.values())

    添加,修改

    #AUTHER:LANIST
    dict={"name":"jack","ages":"18","address":"us"}
    
    #访问字典值,该方法在键值不存在时报错
    print(dict["name"])
    #该方法在之不存在的时候,返回null
    print(dict.get("ages"))
    #判断键值是否存在于字典
    print("good" in dict)
    #有则修改
    dict["ages"] = "21"
    print(dict)
    #无则添加
    dict["sex"]="male"
    print(dict)
    
    
    jack
    18
    False
    {'name': 'jack', 'ages': '21', 'address': 'us'}
    {'name': 'jack', 'ages': '21', 'address': 'us', 'sex': 'male'}

    删除

    dict={"name":"jack","ages":"18","address":"us"}
    #删除字典
    del dict
    
    #删除键和对应的值
    dict.pop("ages")
    print(dict)
    
    #随机删除
    dict.popitem()
    print(dict)

    嵌套

    #Author:Anliu
    info = {
        '1001':{'name':"zhangsan",'身高':"195",'体重':"180"},
        '1002':{'name':"lisi",'身高':"179",'体重':"250"},
        '1002':{'name':"wangwu",'身高':"180",'体重':"130"}}
    print(info)

     

    4.8集合

    集合:集合是一个无序的,不重复的数据集合,可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

  • 相关阅读:
    MySQL 5.7.18 zip 文件安装过程
    Mysql 自定义随机字符串
    JAVA基本类型和引用类型
    初识JSP
    Java导出错误数据
    时序图的使用习惯
    Redis踩坑
    ES踩坑
    代码规范
    Git在公司的使用流程
  • 原文地址:https://www.cnblogs.com/lanist/p/12636301.html
Copyright © 2011-2022 走看看