• 通过参数传递,判断数字、字符串、list、tuple、词典等数据类型是否为可变数据对象


    list:

    >>> a = [1,2,3,4]
    >>> a[0]
    1
    >>> a[1]
    2
    >>> a[0] = 10
    >>> a
    [10, 2, 3, 4]


    def
    type_list(x): x[0] = 10 print x if __name__ == '__main__': a = [1,2,3,4] type_list(a) print a [10,2,3,4] [10,2,3,4]

    tuple:

    tuple:
    >>> a = (1,2,3,4)
    >>> a[0]
    1
    >>> a[1]
    2
    >>> a[0] = 10
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: 'tuple' object does not support item assignment

    def type_tuple(x):
            x[0] = 10
            print x
    
    if __name__ == '__main__':
            a = (1,2,3,4)
            type_tuple(a)
            print a
    
    Traceback (most recent call last):
      File "type_tuple.py", line 7, in <module>
        type_tuple(a)
      File "type_tuple.py", line 2, in type_tuple
        x[0] = 10
    TypeError: 'tuple' object does not support item assignment

    dict:

    >>> a = {'tom':97, 'lisa':85}
    >>> a['tom']
    97
    >>> a['tom'] = 75
    >>> a
    {'lisa': 85, 'tom': 75}
    
    def type_list(x):
            x['tom'] = 75
            print x
    
    if __name__ == '__main__':
            a = {'tom':98, 'lisa':85}
            type_list(a)
            print a
    
    {'lisa': 85, 'tom': 75}
    {'lisa': 85, 'tom': 75}

    string:

    >>> a = 'abcd'
    >>> a[0]
    'a'
    >>> a[1]
    'b'
    >>> a[2]
    'c'
    >>> a[0] = 'b'
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: 'str' object does not support item assignment

    def type_str(x):
            x = 'bbbb'
            print x
    
    if __name__ == '__main__':
            a = 'abcd'
            type_str(a)
            print a

    bbbb
    abcd

    number:

    def type_number(x):
            x = 100
            print x
    
    if __name__ == '__main__':
            a = 1
            type_number(a)
            print a
    100
    1
  • 相关阅读:
    sql server 表变量和临时表
    c# 操作excel 总结
    ifttt.com:让你的网络行为能引发连锁反应
    jQuery.tmpl.js
    [置顶]IFTTT与Google+是什么?ifttt怎么玩?
    使用 TRY/CATCH 语句解决 SQL Server 2005 死锁
    TFS2010 取消锁定
    Android 开发简介
    Cocos2d开发系列(七)
    针对中小型网站(3000人左右/15分钟)的服务器架构
  • 原文地址:https://www.cnblogs.com/xautxuqiang/p/5954483.html
Copyright © 2020-2023  润新知