数据类型及内置方法

整形int与浮点型float

  1、定义:

    1.1 整形int的定义

     age = 18 # age = int(18)

       常用方式,数学计算

                    进制之间的转换:

   “”“

      其他进制转十进制

      二进制转十进制:0,1

        110 1 * (2^2) + 1 * (2^1) + 0 * (2^0) = 4 +2 +0 = 6

      八进制转十进制:0~7

        123 1 * (8^2)+ 2 * (8^1) + 3*(8^0) = 64 + 16 +3 = 83

      十六进制转十进制:0~9 a~f

        321 3 * (16^2) + 2 * (16^1) + 1 * (16^0) = 768 + 32 + 1 = 801

      “”“

    

      print(int("110",2))

      print(int("123",8))

      print(int("321",16))

    十进制转二进制:

      print(bin(108)) #ob 1101100

      print(oct(83)) # 0o 123

      print(hex(1000)) #0x 3e8

     # 整形int是无序的 ,有索引的类型都是有序的。


     # 整形int是不可变类型

      值变id不变就是可变类型

      值变id也变就是不可变类型

    1.2 浮点型float的定义     

      定义方式:height = 1.0 #height = float(1.0)

      浮点型float是无序的,是不可变类型,存一个值

     1.3列表      

      定义:在[]内,用逗号分隔开多个任意数据类型的值

 

      定义方式:通过中括号存值,每个值之间通过逗号分隔

    常用方法:

    1、索引取值(正反都可以),不仅可以取还可以存

      l1 = [1, 2, 3, 4, 5]

      print(l1[2])

      l1[2] = 222

      print(l1)

      结果:3    [1, 2, 222, 4 ,5]

    2、切片索引

      print(l1[1:4])

      结果:[2,3,4]

    3、append():追加值。只能添加到列表的最后一位,一次性只能添加一个值

      l1.append(10000)

      print(l1)

      l1.append([9,0])

      print(l1)

      结果:[1, 2, 3, 4, 5, 10000]

          [1, 2, 3, 4, 5, 10000, [9, 0]]

    4、insert() :插入值,通过索引指定插入的位置

      l1.insert(3, 999)

      print(l1)

      结果:[1, 2, 3, 999, 4, 5, 10000, [9, 0]]

    5、extend():也是追加到列表的最后一位,

      l1.extend([6, 7, 8])

      print(l1)

    6、remove:指定值删除(指定列表里的某个值),比较彻底

      l1.remove(1)

      print(l1)

    7.pop(): 不传值,默认从最后开始删,指定索引删值,pop是有返回值的

      l1 = [1, 2, 3, 4, 5]

      val = l1.pop(2)

      print(l1)

      print(val)

      结果: [1, 2, 4, 5] 3

      l1.pop()

      print(l1)

      l1.pop()

      print(l1)

      结果:[1 , 2 , 4] [1 , 2]

    列表是可变值,存多个值

 1.4 字符串

  定义: 在单引号双引号三引号内包含一串字符

    s1 = '大象'

      s2 = "大象"

      s3 = '''大象'''

      s4 = “”“大象”“”

  以上四种方式都没有任何区别,但是不能混用

    字符串前面加一个小写的r,代表转义(把里面有特殊意义的符号转换成字符串)

    

常用方法:

​        1、索引取值(正向取、反向取),只能取不能存

​        s1 = 'hello world'print(s1[4]) #正向取
print(s1[-7])#反向取
2、索引切片:截取字符串中的一小段字符串print(s1[2:5])

​        结果: llo

​        print(s1[4:])

​        结果: o world

​        print(s1[:5])

​        结果: hello

​        print(s1[0:-2:2])

​        结果:hlowr

​        print(s1[::-1])

​        结果:dlrow olleh

​        3、成员运算: in      not  in  #判断指定字符是否在该字符串中,返回布尔值
print("o" not in s1)

​        4、strip:去除字符串左右连那个边的空格,中间不算

​        input无论接受的是什么类型,一定返回的是字符串

​        name = input(">>:").strip()

​        print(len(name))



​        a1 = '$$$sean$$$'print(a1.strip("$"))

​        结果:sean

​        5、split :切分:对字符串进行切分,可以指定切分的分隔符,返回是一个列表

​        a1 = 'sean~18~male'print(a1.split(~))

​        结果:['sean','18','male']

​        6、len():获取当前数据中的元素的个数

​        a1 = 'hello'print(len(a1))

​        结果:5

​        a1 = 'hello'for i in a1:

​            print(i)

​        结果:h  e  l  l  o

需要掌握的知识点

 

      strip, rstrip(右边的清除),lstrip(左边的清除)

​            inp = input(">>:").lstrip("*")      #清除输入内容左边的*号
print(inp)

​            print(len(inp))

​        lower(全部转换成大写)/upper(全部转换成小写)

​            s1 = 'Hello world'print(s1.upper())

​            print(s1.lower())

​            结果:HELLO WORLD    hello world

​        startswith/endswith   :判断当前字符串是否以。。。开头,或者以。。。结尾,返回的值一定是布尔值

​            s1 = 'Hello world'print(s1.startswith("He"))

​            结果:True

​        .format()

​            你的名字是:sean,你的年龄是:18

​            name = 'xiaogu

​            age = 18print("你的名字是:",name,"你的年龄是",age)

​            print("你的名字是:{},你的年龄是{}".format(name,age))

​            print("你的名字是:{1},你的年龄是:{0}".format(name,age))

​            print("你的名字是:{name},你的年龄是:{age},{gender}".format(age = age ,             name = name ,gender = 'male'))

​        f - string:

​            通过大括号接受变量,在字符串前面一定要加一个小写f     在python以后才有

​            print(f"你的名字:{name},你的年龄是:{age}")

​        split/rsplit  #切分

​            s1 = "name,age,gender"print(s1.split("e",1))#指定可以切分的次数

​            结果:['nam','age,gender']

​        join:将(列表)中每个元素按照前面字符串中的分隔符进行拼接

​            l1 = ['sean','18','male']

​            print("|".join(l1))

​            结果:sean|18|male

​        replace:将字符串中的元素进行替换,参数:先输入要替换的值,再试要替换的新值

​            s1 = "sean,18"print(s1.replace("sean",'大象'))

​            结果:大象,18isdigit():判断当前字符串中的数据,是否是一个数字,返回布尔值

​            score = input("pleas input your score:")

​            if score.isdight():

​                score = int(score)

​                if score >= 90print("优秀")

​            else:

​                print("真皮")

​    字符串是有序的(有索引),不可变类型 ,存一个值

1.5了解操作

find,rfind,index,rindex,count 

​        find #查找当前字符串中某个元素的位置,返回索引,找不到返回-1

​            s1 = '你今天吃饭吃了吗?'print(s1.find("",))

​            结果: 8   index #查找当前字符串中某个元素的位置,返回索引,找不到返回异常

​        count #统计当前字符串中某一个元素的个数

​            s1 = '今天你吃饭吃了吗?'print(s1.count(""))

​            结果: 2center/ljust/rjuse/zfillprint("欢迎光临".ceneter(8,"-"))

​            结果:--欢迎光临--print("欢迎光临".ljust(30,"-"))

​            结果:欢迎光临--------------------------print("欢迎光临".rjust(30,"-"))

​            结果:--------------------------欢迎光临

​            print("欢迎光临".zfill) #右对齐,不够以0填充

​            结果:000000000000000000000000000000000欢迎光临

​        expandtabs()

​             name = 'tony  	  hello'  # 	表示制表符(tab键)
print(name)

​            结果:tony    hello 

​            name.expandtabs(1)  # 修改	制表符代表的空格数

​             结果:tony hello 

is系列

  在python3中

  num1 = b'4' #bytes

  num2 = u'4' #unicode,python3中无需加u就是unicode

  num3 = '四' #中文数字

  num4 = 'Ⅳ' #罗马数字

  isdigit: 识别unicod和bytes

原文地址:https://www.cnblogs.com/lvguchujiu/p/11799893.html