1.append的功能
将一个元素添加到当前列表中。
2.append的用法
list代表你当前使用的列表。通过一个列表调用它的内置函数append函数。new_item是你希望添加到这个列表list中的新的元素(成员)。
names = ['xiaomu']
names.append('dewei')
print(names)
运行结果:
/Users/llq/PycharmProjects/pythonlearn/pythonlearn/python_list/bin/python /Users/llq/PycharmProjects/pythonlearn/python_list/1.py
['xiaomu', 'dewei']
进程已结束,退出代码为 0
3.append的注意事项
1)被添加的元素只会被添加到列表的末尾。
2)append函数是在原有列表的基础上添加元素,不需要额外添加新的变量。
4.代码
例1:看看books列表在内存中的住址。
虽然这个列表没有任何的元素,但当变量创建之后,内存管家依然会给它一个家并赋值一个编号。
#coding:utf-8
books =[]
print(id(books))
运行结果:
4308124416
例2:看看有了成员的books的内存地址和空的books的内存地址是否一样?
是一样的。
#coding:utf-8
books =[]
print(id(books))
books.append('python入门课程')
print(books)
print(id(books))
运行结果:
/Users/llq/PycharmProjects/pythonlearn/pythonlearn/python_list/bin/python /Users/llq/PycharmProjects/pythonlearn/python_list/list_append.py
4298982144
['python入门课程']
4298982144
进程已结束,退出代码为 0
不过,再执行几次脚本。虽然每次执行后,有了成员的books的内存地址和空的books的内存地址是都相同。
但是,每次执行脚本之后,它们的内存地址都和上一次有所区别。
这是因为脚本执行完毕之后,内存管家发现已经没人使用这些变量,所以就把它们请了出去。
再次点击执行后的结果:
/Users/llq/PycharmProjects/pythonlearn/pythonlearn/python_list/bin/python /Users/llq/PycharmProjects/pythonlearn/python_list/list_append.py
4341613312
['python入门课程']
4341613312
进程已结束,退出代码为 0
例3:用append函数添加其它的数据类型。
#coding:utf-8
books =[]
print(id(books))
books.append('python入门课程')
print(books)
print(id(books))
number = 1.1
tuple_test =(1,)
dict_test ={'name':'dewei'}
books.append(number)
books.append(tuple_test)
books.append(dict_test)
print(books)
运行结果:
/Users/llq/PycharmProjects/pythonlearn/pythonlearn/python_list/bin/python /Users/llq/PycharmProjects/pythonlearn/python_list/list_append.py
4342694656
['python入门课程']
4342694656
['python入门课程', 1.1, (1,), {'name': 'dewei'}]
进程已结束,退出代码为 0
例4:在一个append里面放入多个item(元素),报错了。append函数每次只能加入一个元素。
#coding:utf-8
books =[]
print(id(books))
books.append('python入门课程')
print(books)
print(id(books))
number = 1.1
tuple_test =(1,)
dict_test ={'name':'dewei'}
books.append(number,tuple_test,dict_test)
print(books)
运行结果:
/Users/llq/PycharmProjects/pythonlearn/pythonlearn/python_list/bin/python /Users/llq/PycharmProjects/pythonlearn/python_list/list_append.py
4369974016
['python入门课程']
4369974016
Traceback (most recent call last):
File "/Users/llq/PycharmProjects/pythonlearn/python_list/list_append.py", line 13, in <module>
books.append(number,tuple_test,dict_test)
TypeError: append() takes exactly one argument (3 given)
进程已结束,退出代码为 1
如何只写一次append,就把所有的成员变量都添加进去呢?可以使用循环,到时候再介绍。
例5:之前加入的都是定义好的变量,也可以直接添加变量值。
#coding:utf-8
books =[]
print(id(books))
books.append('python入门课程')
print(books)
print(id(books))
number = 1.1
tuple_test =(1,)
dict_test ={'name':'dewei'}
books.append(number)
books.append('django')
books.append(1)
print(books)
运行结果:
/Users/llq/PycharmProjects/pythonlearn/pythonlearn/python_list/bin/python /Users/llq/PycharmProjects/pythonlearn/python_list/list_append.py
4347659008
['python入门课程']
4347659008
['python入门课程', 1.1, 'django', 1]
进程已结束,退出代码为 0
例6:无论添加多少内容,都是在同一个内存地址下的list进行处理,证明了列表是可以进行修改的。
#coding:utf-8
books =[]
print(id(books))
books.append('python入门课程')
print(books)
print(id(books))
number = 1.1
tuple_test =(1,)
dict_test ={'name':'dewei'}
books.append(number)
books.append('django')
books.append(1)
print(books)
print(id(books))
运行结果:
/Users/llq/PycharmProjects/pythonlearn/pythonlearn/python_list/bin/python /Users/llq/PycharmProjects/pythonlearn/python_list/list_append.py
4299916032
['python入门课程']
4299916032
['python入门课程', 1.1, 'django', 1]
4299916032
进程已结束,退出代码为 0