if else d的匹配在C和Python上是完全不同的,Python依靠对其匹配,而C是就近匹配。所以Python有更好的可读性和代码更优美简洁。

Python 结构体类数组 python的结构体_Python 结构体类数组

条件表达式(三元操作符)

根据判断条件,来进行赋值操作

Python 结构体类数组 python的结构体_Python 结构体类数组_02

assert这个关键字 我们称之为断言。当这个关键字后边的条件为假的时候,程序自动崩溃,并抛出AssertionError异常。例如:

  >>> assert 3>9
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    AssertionError


一般来说,我们可以用它在程序中置入检查点,当需要确保程序中的某个条件一定为真,才能让程序正常工作的话,assert关键字就非常有用了。 


②列表----超级结构体

我说列表是结构体,那么列表肯定可以放不同的数据类型。这里我们再来了解三个不同的函数来操作列表:

(1)append     添加到最后
    >>> a = ['通哥','是','世界上','MAX',666,6.6,'帅哥']
    >>> a.append('我同意')
    >>> a
    ['通哥', '是', '世界上', 'MAX', 666, 6.6, '帅哥', '我同意'](2)extend        把列表添加到最后
    >>> a.extend('aaa')        #extend是以列表为单位扩展,加入字符串会被分割开
    >>> a    ['通哥', '是', '世界上', 'MAX', 666, 6.6, '帅哥', '我同意', 'a', 'a', 'a']

    >>> a.extend(['shuai','完美','perfect'])
    >>> a
    ['通哥', '是', '世界上', 'MAX', 666, 6.6, '帅哥', '我同意', 'a', 'a', 'a', 'shuai', '完美',     'perfect'](3)insert           可以选择添加位置
  >>> a.insert(0,'卧槽')
    >>> a
    ['卧槽', '通哥', '是', '世界上', 'MAX', 666, 6.6, '帅哥', '我同意', 'a', 'a', 'a', 'shuai',        '完美', 'perfect']③删除列表元素的方法:
(1)remove()
    >>> a = ['通哥','是','帅哥','MAX','6.666']
    >>> a.remove('6.666')
    >>> a    ['通哥', '是', '帅哥', 'MAX']
    删除列表元素,不管元素处于什么位置
    ['通哥', '是', '帅哥', 'MAX']
    >>> a.remove('是')
    >>> a
    ['通哥', '帅哥', 'MAX']    (2)del        不是类方法
        >>> del a[2]
        >>> a
        ['通哥', '帅哥']
    (3)pop()
      >>> a = ['通哥','是','帅哥','MAX','6.666']
        >>> a.pop(3)
        'MAX'
        >>> a
        ['通哥', '是', '帅哥', '6.666']
④列表分片
    >>> a[1:3]
    ['是', '帅哥']
    >>> a[1:]
    ['是', '帅哥', '6.666']
    >>> member=a[:]
    >>> member
    ['通哥', '是', '帅哥', '6.666']
⑤列表与运算符
  >>> list1 = ['通哥','是','帅哥']
    >>> list2 = list1*3
    >>> list2
    ['通哥', '是', '帅哥', '通哥', '是', '帅哥', '通哥', '是', '帅哥']⑥目录
  >>> dir(list)
    ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__',     '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__',     '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__',     '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index',     'insert', 'pop', 'remove', 'reverse', 'sort']    >>> list1 *= 3
    >>> list1.count('666')
    3
#index索引的意思,找到查找范围内的第一个符合条件的字符的位置并返回地址  
    >>> list1.index('666',1,4)
    3
   >>> list2 = ['通哥', '是', '帅哥', '666']            #倒序排列
    >>> list2.reverse()
    >>> list2
    ['666', '帅哥', '是', '通哥']
   list.sort()默认正排序,sort(reverse=1)逆序
        >>> list4.sort()
        >>> list4
        [0, 8, 9, 12, 36, 56, 99]
        >>> list4.sort(reverse=1)
        >>> list4        [99, 56, 36, 12, 9, 8, 0]
关于拷贝的区别:
list2 = list1        当list1的内容发生改变时,list2的内容也会随之变化,list2的
                           本质就是标签。
list3 = list1[:]       真正复制了一份 list1 的值