zoukankan      html  css  js  c++  java
  • 【python】入门学习(六)

    type() #检查变量或值得数据类型

    >>> type(5)
    <class 'int'>

    序列:包括字符串、元组和列表。序列都可以用索引、切片、len()(计算元素个数)、x in s 判断s中是否包含x

    元组: 不可变,如果修改需要大量的复制,即彻底重新赋值

    空元组: ()

    单个元素的元组: (x,)  #注意一定要有','

    多个元素的元组: (x, y, z) 或 (x, y, z,) #最后的','可有可无

    >>> item = (6, 'apple', (1,2))
    >>> item
    (6, 'apple', (1, 2))
    >>> item[0]
    6
    >>> item[-1]
    (1, 2)
    >>> item[-1][0]
    1
    >>> item = ()
    >>> type(item)
    <class 'tuple'>
    >>> item = (5)
    >>> type(item)
    <class 'int'>
    >>> item = (5,)
    >>> type(item)
    <class 'tuple'>

    删除元组的第一个元素

    >>> item = (1,2,3,4,5)
    >>> item2 = item[1:]
    >>> item = item2
    >>> item
    (2, 3, 4, 5)

    元组相关函数:

    x in tup #x是否在元组内

    len(tup) #元组中的元素数

    tup.count(x) #元素x在元组中出现的次数

    tup.index(x) #元组中第一个x的索引,如没有则出错

    +*  #拼接

    >>> item
    (2, 3, 4, 5)
    >>> item*2
    (2, 3, 4, 5, 2, 3, 4, 5)
    >>> item + (1,2,3)
    (2, 3, 4, 5, 1, 2, 3)

    列表:可以改变,用[]括起,单元素的末尾不一定要','

    >>> numbers = [1,2,3,4,5,6,7]
    >>> numbers
    [1, 2, 3, 4, 5, 6, 7]
    >>> type(numbers)
    <class 'list'>
    >>> numbers * 2
    [1, 2, 3, 4, 5, 6, 7, 1, 2, 3, 4, 5, 6, 7]
    >>> numbers[1:]
    [2, 3, 4, 5, 6, 7]
    >>> numbers[-3:]
    [5, 6, 7]
    >>> numbers[0]=100
    >>> numbers
    [100, 2, 3, 4, 5, 6, 7]

    列表元素指向相应的值,而不是包含。用自引用说明:

    >>> numbers
    [100, 2, 3, 4, 5, 6, 7]
    >>> numbers[0] = numbers
    >>> numbers
    [[...], 2, 3, 4, 5, 6, 7]

    列表的相关函数:

    s.append(x) #在列表s末尾添加元素x

    #numnote.py
    def numnote(lst):
        msg = []
        for num in lst:
            if num < 0:
                s = str(num) + 'is negative'
            elif 0 <= num <= 9:
                s = str(num) + 'is digit'
            else:
                break
            msg.append(s)
        return msg
    >>> import numnote
    >>> numnote.numnote([1,-1,2,22])
    ['1is digit', '-1is negative', '2is digit']

    若要逐行打印

    >>> for msg in numnote([1,2,3,10]):
        print(msg)
    
    1is digit
    2is digit
    3is digit
    >>> print('
    '.join(numnote([1,2,3,10])))
    1is digit
    2is digit
    3is digit

    s.extend() #在末尾添加一个序列

    >>> lst = []
    >>> lst.extend('cat')
    >>> lst
    ['c', 'a', 't']

    s.pop(i) #删除并返回索引为i的元素,默认删除最后一个

    >>> lst
    ['c', 'a', 't']
    >>> lst.pop()
    't'
    >>> lst.pop(0)
    'c'
    >>> lst
    ['a']

    s.remove(x) #删除s中的第一个x元素,但不返回值

    >>> lst
    ['a', 'h', 'e', 'l', 'l', 'o', ',', 'e', 'v', 'e', 'r', 'y', 'o', 'n', 'e']
    >>> lst.remove('e')
    >>> lst
    ['a', 'h', 'l', 'l', 'o', ',', 'e', 'v', 'e', 'r', 'y', 'o', 'n', 'e']

    s.reverse() #反转列表元素

    >>> lst
    ['a', 'h', 'l', 'l', 'o', ',', 'e', 'v', 'e', 'r', 'y', 'o', 'n', 'e']
    >>> lst.reverse()
    >>> lst
    ['e', 'n', 'o', 'y', 'r', 'e', 'v', 'e', ',', 'o', 'l', 'l', 'h', 'a']

    s.sort() #对元素排序 从小到大 要从大到小排序在调用一次reverse就可以了 也可以对列表中的元组排序

    >>> lst
    ['e', 'n', 'o', 'y', 'r', 'e', 'v', 'e', ',', 'o', 'l', 'l', 'h', 'a']
    >>> lst.sort()
    >>> lst
    [',', 'a', 'e', 'e', 'e', 'h', 'l', 'l', 'n', 'o', 'o', 'r', 'v', 'y']
    >>> lst.reverse()
    >>> lst
    ['y', 'v', 'r', 'o', 'o', 'n', 'l', 'l', 'h', 'e', 'e', 'e', 'a', ',']
    >>> lst = [(1,2),(1,-1),(2,)]
    >>> lst
    [(1, 2), (1, -1), (2,)]
    >>> lst.sort()
    >>> lst
    [(1, -1), (1, 2), (2,)]

    列表解析:用于快速创建列表

    >>> [n*n for n in range(1,11)]
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
    >>> [n*n for n in range(1,11)]
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
    >>> [2*n**3+4 for n in range(1,11)]
    [6, 20, 58, 132, 254, 436, 690, 1028, 1462, 2004]
    >>> [c for c in 'pizza']
    ['p', 'i', 'z', 'z', 'a']
    >>> [c.upper() for c in 'pizza']
    ['P', 'I', 'Z', 'Z', 'A']

    使用解析进行筛选:

    >>> nums = [-1,0,6,-4,2,5]
    >>> result = [n for n in nums if n > 0]
    >>> result
    [6, 2, 5]

    删掉元音

    >>> ''.join([c for c in 'Apple' if c.lower() not in 'aeiou'])
    'ppl'

    不要方括号也可以,将得到生成器表达式

    >>> ''.join(c for c in 'Apple' if c.lower() not in 'aeiou')
    'ppl'

    字典:也称关联数组、映射或散列表 用{}表示

    可以利用来访问,键不可重复不可修改  下面的'red'就是键,2是值

    >>> color = {'red':2, 'blue':1, 'green':3}
    >>> color['red']
    2
    >>> color['blue']=0
    >>> color
    {'green': 3, 'blue': 0, 'red': 2}

    相关函数

    items 、 keys、 values、 get、pop、 popitem、 clear、 copy 、fromkeys 、setdefault、 update

    #视图
    >>> k = color.keys() >>> for i in k:print(i) green blue red

    集合:只包含键,没有相关联的值

    删除列表中重复的元素

    >>> lst = [1,1,2,2,3,3,3]
    >>> lst
    [1, 1, 2, 2, 3, 3, 3]
    >>> s = set(lst)
    >>> s
    {1, 2, 3}
  • 相关阅读:
    取字符串前缀
    分解质因数
    git 常用命令
    微信 iphone端 audio 播放问题
    git入门:创建合并分支 解决冲突 分支管理策略
    git入门:远程仓库 github篇
    git入门:撤销修改 删除文件
    git入门: 工作区暂存区 以及 管理修改
    函数柯里化实现
    转载:深度工作:充分使用每一份脑力
  • 原文地址:https://www.cnblogs.com/dplearning/p/3952226.html
Copyright © 2011-2022 走看看