引用
当你创建了一个对象并将其分配给某个变量时,变量只会查阅(Refer)某个对象,并且它也不会代表对象本身。也就是说,变量名只是指向你计算机内存中存储了相应对象的那一部 分。这叫作将名称
绑定(Binding)给那一个对象。
print("Simple assignment")
shoplist = ['apple', 'mango', 'carrot', 'banana']
# mylist只是指向同一对象的另一种名称
mylist = shoplist
del shoplist[0]
print('shoplist is', shoplist)
print('mylist is', mylist)
# shoplist和mylist都打印出了相同的列表
print("Copy by making a full slice")
# 通过生成一份完整的切片制作一份列表的副本
mylist = shoplist[:]
del mylist[0]
print('shoplist is', shoplist)
print('mylist is', mylist)
'''
如果希望创建对象的副本,必须通过切片操作slice
如果仅仅是将一个变量名赋给另一个名称,那么它们都指向同一个对象
'''
运行结果:
str类
所有字符串都是 str 类下的对象。str类有一些有用的方法。
name = "Swaroop"
if name.startswith('Swa'):
print("start with 'Swa'")
if 'a' in name:
print("a in name")
if name.find('war') != -1:
print("it contains the string 'war'")
delimiter = '_*_'
mylist = ['Brazil', 'Russia', 'India', 'China']
print(delimiter.join(mylist))
运行结果:
find 方法用于定位字符串中给定的子字符串的位置。如果找不到相应的子字符串, find 会返回 -1。
str 类拥有一个简洁的方法用以 联结(Join) 序列中的项目,其中字符串将会作为每一项目之间的分隔符,并以此生成并返回一串更大的字符串。