王杰

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
#!/usr/bin/env python
# -*- coding:utf-8 -*-




# 列表 list #类,列表
# li = [1,12,9,"age",["江苏省",["19",10],"新沂市"],"sunjj",True] #通过list创建的对象,li
# 1、列表格式
# 2、列表中可以嵌套任何类型
# 中括号括起来
# ,分割每个元素
# 列表中的元素可以是数字,字符串,布尔值...所有的都能放进去
# "集合",内部放置任何东西


#3、索引取值
# print(li[3])

#4、切片,切片结果也是列表
# print(li[3:-1])

#5、可以被for循环
#可以被while循环

# for item in li:
# print(item)


# 6、可以通过索引进行修改和删除
# 修改
# li[1] = 120
# print(li)
# li[1] = [11,22,33,44]
# print(li)

# 删除,第一种方式
# del li[1]

# 7、切片修改
# li[1:3] = [120,90]
# print(li)

# 切片删除
# del li[2:6]
# print(li)


# 8、in 操作
# li = [1,12,9,"age",["江苏省",["19",10],"新沂市"],"sunjj",True] #通过list创建的对象,li
# v = 12 in li
# print(v)
#列表中的元素


# 9、操作

# li = [1,12,9,"age",["江苏省",["19",10],"新沂市"],"sunjj",True] #通过list创建的对象,li
# v=li[4][1][0] #定位19
# v1=li[4][1][0][1] #定位19中的9
# print(v,v1)



# 10、转换
# 字符串转换成列表 li = list("asfasdfadsfwefasf"),内部使用for循环
# s = "asdfwefsadfesfd"
# new_li = list(s)
# print(new_li)


# 列表转换成字符串
# 需要自己写for循环一个一个处理:既有数字又有字符串
# li = [11,22,33,'123','sunjj',124]
# r = str(li)
# print(r)

# s = ""
# for item in li:
# s = str(item) #s += str(item) 是 s = s+str(item)的缩写
# print(s)



# a='231'
# b=34
# print(a+str(b))


#直接使用字符串join方法:列表中的元素只有字符串
# li = ["123",'sunjj']
# v = "".join(li)
# print(v)



#*************************list类中提供的方法**************************
#1、在原来值最后追加
# li = [11,22,33,22,44]
# 参数
# 1.在原来值最后追加
# 对象.方法(...) #li对象调用append的方法
# li.append(5)
# li.append("alex")

#2、清空列表
# li.clear()
# print(li)

# 3、拷贝,浅拷贝
# v = li.copy()

# 4、计算元素出现的次数
# v = li.count(22)
# print(v)

# 5、扩展原列表,参数:可迭代对象
# li = [11,22,33,44]
# li.append([9898,"不得了"])
# print(li) #[11, 22, 33, 44, [9898, '不得了']]

# li.extend([9898,"不得了"])
# print(li)

# 6、根据值获取当前值索引位置(左边优先)
# li = [11,22,33,22,44]
# v = li.index(22)
# print(v)

#7、 在指定索引位置插入元素
# li = [11,22,33,22,44]
# li.insert(1,99)
# print(li)

# 8、删除某个值(1.指定索引;2.默认最后一个)并获取删除的值
# li = [11,22,33,22,44]
# v = li.pop()
# print(li)
# print(v)

# li = [11,22,33,22,44]
# v = li.pop(1)
# print(li)
# print(v)

# 9、删除列表中指定值,左边优先
# li = [11,22,33,22,44]
# li.remove(22)
# print(li)

# PS:pop remove del li(0) del li(7:9) clear


# 10、将当前列表进行反转
# li = [11,22,33,22,44]
# li.reverse()
# print(li)


# 11、列表的排序
# li = [11,87,22,66,33,22]
# li.sort()
# print(li)
#
#
# li = [11,87,22,66,33,22]
# li.sort(reverse=True)
# print(li)

# 欠 cmp key sorted



# li = [11,22,33,44]
# print(li)
# print(li)
# print(li)
# print(li)
# print(li)
# print(li)
# 列表是有序的,元素可以被修改



# 列表
# list
# li = [111,22,33,44]

#元组,元素不可被修改,不能被增加或删除
# tuple
# tu = (111,"alex",22,True,[(34,43)],33,44)
# 一般写元组的时候,推荐在最后加入逗号,
# 索引
# v = tu[4]
# print(v)

# 切片
# v = tu[0:2]
# print(v)


# 元组可以被for循环,也是可迭代对象
# for item in tu:
# print(item)


# s = "sdfaewfasdf0983"
# li = ["asef",23415]
# tu = (123,142,"asewfc")

# v = tuple([s])
# print(v)

# v = tuple(li)
# print(li)

# v = list(tu)
# print(v)

# v = "_".join(tu)
# print(v)


# li = ["sefwx","sfeinasslf"]
# li.extend((11,22,33,"fwa",))
# print(li)


# 元组的一级元素不可修改/删除/增加
# tu = (111,"alex",22,True,[(34,43)],33,22,44)
#元组是有序的
# v = tu[4][0][0] #获取34
# print(v)
# v = tu[3]
# print(v)
# tu[4][0] = 567
# print(tu)

# 元组中的方法只有两个 count,index
# v=tu.count(22)
# v1=tu.index(3)
# print(v,v1)


#******** 字典 dict *************
# dict

# 1、基本结构
# info = {
# "k1":"v1",
# 'k2':'v2'
# }

# 字典的value可以是任何值,
# info = {
# 'k1':'v1', #键值对#
# 'k2':True,
# 'k3':[
# 11,
# [88],
# (32),
# 22,
# 33,
# {
# "kk1":'vv1',
# 'kk2':'vv2',
# 'kk3':(11,22),
# }
# ],
# 'k4':(11,22,3,5)
# }
# print(info)

# info = {
# 1:'sefw'
# }
#
# print(info)



###### 3、布尔值(true 为1 false 0.注意不要和1 0重复,如果重复只会显示一个) ,列表,字典不能作为字典的key
# info ={
# 1:'asew',
# 'k1':'wfwq',
# # True:"123",
# # [11,22]:123,
# (11,22):123,
# # ['k1':'v1']:123
# }
# print(info)




# 4、字典是无序的
# info = {
# 'k1':18, #键值对#
# 'k2':True,
# 'k3':[
# 11,
# [88],
# (32),
# 22,
# 33,
# {
# "kk1":'vv1',
# 'kk2':'vv2',
# 'kk3':(11,22),
# }
# ],
# 'k4':(11,22,3,5)
# }
# print(info)


# v = info['k1']
# print(v)

# v = info(2)
# print(v)

# 5、支持索引方式找到指定元素
# 获取kk3的值11
# v = info ['k3'][5]['kk3'][0]
# print(v)

# 6 支持删除 ,删除k1
# del info['k1']
# print(info)

# 删除kk3
# del info['k3'][5]['kk3']
# print(info)


# 7、字典支持for循环
# for i in info.values():
# print(i)

# for k,v in info.items():
# print(k,v)


# dict
# dic = {
# 'k1':'v1'
# }
# 根据序列,创建字典,并指定统一的值
# v = dict.fromkeys(["k1",123,'999'],123)
# print(v)


# 根据Key获取值,key不存在时,可以指定默认值(None)
# v = dic['k111111']
# print(v)

# v = dic.get('k1',11111)
# print(v)



# 3、删除并获取值(pop可能指定删除项,popitem随机删除项)
# dic = {
# 'k1':'v1',
# 'k2':'v2'
# }

# v = dic.pop('k1',90)
# print(dic,v)

# v = dic.popitem()
# print(dic,v)


# 4、设置值,如值已存在则不设置并获取当前key对应的值,如值不存在则设置并获取当前key对应的置
# dic = {
# 'k1':'v1',
# 'k2':'v2'
# }
# v = dic.setdefault('k1111','123')
# print(dic,v)



# 5、更新的两种方式
# dic = {
# 'k1':'v1',
# 'k2':'v2'
# }
# dic.update({'k1':'11111','k3':123})
# print(dic)

# dic.update(k1=123,k3=345,k5='aswef')
# print(dic)


# 重要要记住的 keys() values() items() get() update()

############### 整理 ###############3

# 一、数字
# int(..)

# 二、字符串
# replace/find/join/strip/startwith/split/upper/lower/format

# tempate = 'i am {name},age:{age}'
# v = tempate.format(name="alex",age=19)
# v = tempate.format(**{'name':'alex','age':19})
# print(v)


# 三、列表 list
# append/extend/insert
# 索引、切片、循环


# 四、元组
# 不重要可以忽略
# 索引、切片、循环 以及元素不能被修改


# 五、字典
# get/update/key/values/items
# 可以for循环,索引

# 字典可以被in
# dic = {
# 'k1':'v1'
# }


# v = 'k1' in dic
# print(v)


# v = 'v1' in dic.values()
# print(v)



# 六、布尔值 bool 0 1
# None '' () [] {} ===>False



posted on 2018-10-17 14:21  Sunjingjing  阅读(181)  评论(0)    收藏  举报