python3 列表的特性

1.列表的定义

a.定义一个空的列表

l = []

print(type(l))


b.定义一个普通的列表

l2 = [1, 2e+8, 2j+9, True, "hello"]     ####列表可以放置各种类型的字符串


c.定义单值列表

l3 = [ "hello" ]


2.列表索引

print(l2[0])    #索引列表第一个字符出为1

print(l2[-1])   #索引列表的最后一个字符o


3.列表的增加

languages = ["shell", "c", "c++", "java", "python"]

a. append;##追加一个元素到列表的最后

languages.append("c#")

print(languages)


b. extend:追加其他列表里面的元素到指定列表中

other_languages = ["php","html5"]   ##指定另外的列表

languages.extend(other_languages)   ###将另外的列表元素追加到指定的列表里面


languages.append(other_languages)   ###追加其他列表到指定列表的最后位置;

print(languages)


c. insert : 给列表指定位置添加元素;

languages.insert(0,"html5")

print(languages)

languages.insert(3,"php")

print(languages)


4.列表的删除

list = ["shell", "java", "c++", "python"]

remove:删除指定值--------------->删除指定元素后列表内容改变,传递给下一个命令

list.remove("c++")              ####删除C++

print(list)

list.remove("python")

print(list)


pop删除指定索引值,默认情况删除最后一个元素;(没有定义列表,所以作用的是上一个命令执行后的列表;)

list.pop()

print(list)

list.pop(-1)    ########删除列表的最后一个元素

print(list)


del 删除列表元素,可以通过索引以及切片的方式进行删除;

l1 = [1, 2, 3, 4, "hello"]

del l1[0]       #####删除第一个元素

print(l1)

del l1[:-1]    #####删除除了最后一个元素的其他元素:列表为上一条命令后的列表

print(l1)


clear      ####清空列表

l1.clear()

print(l1)


5.删除列表的重复元素

l = ["shell", "java", "python", "shell", "php"]

new_l = []

for i in l:       #    print(l.count(i))             #计算赋值的i元素在列表里面出现的次数

         if i not in new_l and l.count(i) == 1:

             new_l.append(i)

print(new_l)


a = 1     #赋值为整型

b = "1"    #赋值为字符串

print(type(a),type(b))

6.修改列表中的元素

一:通过索引修改列表

 list = ["hello", "python", "c++"]

原理将新的元素赋值给索引位置

list[1] = "1"

print(list)


二:通过切片的方法修改列表

原理将新的元素或者列表赋值切片位置

list = ["hell", "python", "c++", "java"]

list[:1] = ["python", "shell"]              #将列表的元素赋值给list列表的第一个元素

print(list)


   

list = ["hell", "python", "c++", "java"]

list[:2] = ["python", "shell"]              #将列表的两个元素分别赋值给list列表的第一与第二个元素

print(list)
   
list = ["hell", "python", "c++", "java"]

list[:3] = ["python", "shell"]        #将列表的两个元素分别赋值给list列表的第一与第二个元素,第三个元素没有,不进行赋值删除元素

print(list)
    

7.列表的复制

第一种方法:

languages = ["shell", "c", "c++", "java", "python"]

languages1 = languages.copy()

print(id(languages), id(languages1))   #使用.copy复制命令将languages复制一份赋值于languages1

languages.append("php")

print(languages,id(languages))

print(languages1,id(languages1))  

 

第二种方法:(通过切片的方式进行复制)

languages = ["shell", "c", "c++", "java", "python"]

languages1 = languages[:]

print(id(languages),id(languages1))    #每刷新一次。id都会进行改变

languages.append("c++")

print(languages,id(languages))

print(languages1,id(languages1))

 

 以下方法不能实现复制,因为两个变量指向同一内存地址:给一个变量赋值另外一个变量也会发生改变;复制,我们愿望一个变量改变另外变量不会发生变化

languages1 = languages

print(id(languages),id(languages1))

languages.append("c++l")

print(languages,id(languages))

print(languages1,id(languages1))


8.列表的查看

languages = ["shell", "c", "python", "shell", "a", "d"]

print(languages.count("shell"))    #计算shell在列表里面出现的次数

print(languages.index("shell"))    #打印shell在列表里面第一次出现的索引值


9.is 命令与 ==命令的区别

id :是在内存中存储的位置   (在python里面一些小整型数据的id值是固定的)

type:变量,类型    value:值是否相等

is 判断:两边数据的类型type,值value以及内存的位置id

== 判断:两边数据的类型type以及值value

is 表示是对象表示符,表示两个变量的值是否相同;

== 表示值是否相等











































































  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值