基础:

 #! /usr/bin/env python
# -*- coding: utf-8 -*-
# __author__ = "DaChao"
# Date: 2017/6/8 '''
一:可变不可变
可变:列表,字典
不可变:数字,字符串,元组 二:存放值的个数
一个值:数字,字符串
多个值(容器类型):列表,元组,字典 三:取值方式
直接取值:数字
序列类型:字符串,元组,列表
映射类型:字典
''' # 一、列表 [,,,,] 中括号
# a = ['a','b','c','d','c','e']
# b = [5,6,1,2,3]
#
# b.sort() #对原列表进行排序
# print(b) # a.remove('c') #移除列表中某个值的第一个匹配项
# print(a) # print(a.pop()) #移除列表中的一个元素,并且返回该值
# print(a) # a.insert(1,b) #将对象插入列表
# print(a) # print(a.index('b')) #从列表中找出某个值第一个匹配项的索引位置 # a.extend(b) #在列表末尾一次性追加另一个序列中的多个值
# print(a) # print(a.count('a')) #统计某个元素在列表中的次数 # a.append("aaa") #在列表末尾添加新的对象
# print(a) # print(len(a)) #列表长度
# print(max(a)) #列表中最大值返回 # print(a+b) #列表合并相加
# print(a*4) #列表复制相乘 # print(a[0])
# print(a[1:5])
# a[1] = 'bb' #修改列表元素
# a.append('dd') #增添列表元素 append
# print(a)
# del a[0] #删除列表元素
# print(a) # 二、元祖 () 小括号 # a = ('a','b','c','d','c','e')
# b = (5,6,1,2,3)
#
# c = a + b
# print(c) # 三、字典 {key1:valve1,key2:valve2,key3:valve3} 大括号 key是唯一的,但是valve不是唯一的
# key键不可变、且唯一,不可用列表表示! # dict = {"dachao":"shuai","xiao":"hao","chao":"da"}
#
# dict["xiao"] = "haoda"
# dict["xuan"] = "dada"
# del dict["dachao"]
# print(dict) # m = ['a','b',['alex','yuanhao'],'d']
#
# for index in range(len(m)):
# value = m[index]
# if type(value) is list:
# for i in range(len(value)):
# print(value[i])
# else:
# print(value)
# for count in range(0,len(m)):
# print(m[count]) # m = 'alex123'
# *_,a,b = m
# print(a,b)
# a,*_,b = m
# print(a,b) # x = 6 #赋值交换
# y = 8
# print(x,y)
# x,y = y,x
# print(x,y) # 一、可变与不可变的定义
# id和type不变的前提下,value可变则可变,所以数值和字符串不可变!列表可变 # x = 300
# y = 300
# x == y #比较数值
# x is y #比较id
# type(x) == type(y) #比较类型

基础

作业及练习:

 #! /usr/bin/env python
# -*- coding: utf-8 -*-
# __author__ = "DaChao"
# Date: 2017/6/8 #选做题:用户交互,显示省市县三级联动的选择 dic1 = {}
dic1["东部"] = ("烟台","青岛","威海")
dic1["西北部"] = ("德州","东营","淄博")
dic = {}
dic["山东"] = dic1
dic2 = {}
dic2["吴国"] = ("周瑜","大乔","小乔")
dic2["蜀国"] = ("刘备","关羽","张飞")
dic2["魏国"] = ("曹操","司马懿","夏侯惇")
dic["三国"] = dic2
print(dic)
print(dic1)
print(dic2) # 四、购物车
# 功能要求:
#
# 要求用户输入总资产,例如:2000
# 显示商品列表,让用户根据序号选择商品,加入购物车
# 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
# 附加:可充值、某商品移除购物车 # goods = [
# {"name": "电脑", "price": 1999},
# {"name": "鼠标", "price": 10},
# {"name": "游艇", "price": 20},
# {"name": "美女", "price": 998},
# ]
# money = int(input("Please input your all money: "))
# n = 1
# goods_shop = []
# for i in goods: #实现商品加序号的显示
# print(n,i["name"],i["price"])
# n+=1
#
# tag = True #实现顾客选择商品,并新建购物车,加入选购商品
# while tag:
# num = input("Please input your choose number or 'q': ")
# if num in ('1','2','3','4'):
# goods_shop.append(goods[int(num)-1])
# continue
# elif num == 'q':
# tag = False
#
# sum_money = 0
# for i in goods_shop: #实现购物车金额汇总
# sum_money += int(i['price'])
#
# tag2 = True #实现购物支付
# while tag2:
# print("Your total shopping money are : ",sum_money)
# buyyn = input("y or n: ")
# if buyyn == 'y':
# if sum_money <= money:
# print("Payment successful!")
# else:
# print("Sorry,your balance has been insufficient,please promptly value!")
# tag2 = False
# elif buyyn == "n":
# print("Exit!")
# tag2 = False # 三、输出商品列表,用户输入序号,显示用户选中的商品
# 商品 li = ["手机", "电脑", '鼠标垫', '游艇'] # li = ["手机", "电脑", '鼠标垫', '游艇']
# for i,v in enumerate(li):
# print(i,v)
# a = int(input("Please input your choose number: "))
# print(li[a]) #二、查找
'''查找列表中元素,移除每个元素的空格,并查找以 a或A开头 并且以 c 结尾的所有元素。''' # li = ["alec", " aric", "Alex", "Tony", "rain","AAAAAc"]
# for i in range(len(li)):
# a = li[i].strip()
# if a.startswith('a') or a.startswith('A'):
# if a.endswith('c'):
# print(a) # tu = ("alec", " aric", "Alex", "Tony", "rain","Ac")
# for i in range(len(tu)):
# a = tu[i].strip()
# if a.startswith('a') or a.startswith('A'):
# if a.endswith('c'):
# print(a) # dic = {'k1': "alex", 'k2': ' aric', "k3": "Alex", "k4": "Tony"}
# for i in dic: # 字典可以直接做循环范围
# a = dic[i].strip()
# if a.startswith('a') or a.startswith('A'):
# if a.endswith('c'):
# print(a) # print(dic.values()) #一、元素分类 # 有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
# 即: {'k1': 大于66的所有值, 'k2': 小于66的所有值} # a = [11,22,33,44,55,66,77,88,99,90,100,99] #
# b = []
# c = []
# d = ('key1','key2')
#
# for i in range(0,len(a)):
# if a[i] > 66:
# b.append(a[i])
# elif a[i] < 66:
# c.append(a[i])
# else:
# continue
#
# e = dict.fromkeys(d) #字典的创建
# e['key1'] = b
# e['key2'] = c
# print(e)

作业及练习

Day 15 python 之 列表、元组、字典的更多相关文章

  1. **python中列表 元组 字典 集合

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...

  2. python中列表 元组 字典 集合的区别

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...

  3. Python之列表&元组&字典

    今天学习了Python的基本数据类型,做以下笔记,以备查用. 一.列表 列表的常用方法: 1.append()方法 def append(self, p_object): # real signatu ...

  4. Python学习-列表元组字典操作

    一.列表 列表是Python的基本数据类型之一,它是以 [] 括起来的,内部成员用逗号隔开.里面可以存放各种数据类型. # 例如: list2 = ['jason', 2, (1, 3), ['war ...

  5. python字符串/列表/元组/字典之间的相互转换(5)

    一.字符串str与列表list 1.字符串转列表 字符串转为列表list,可以使用str.split()方法,split方法是在字符串中对指定字符进行切片,并返回一个列表,示例代码如下: # !usr ...

  6. python 中列表 元组 字典 集合的区别

    先看图片解释 (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计过去一周我们买过的东西,把这些东西列出来,就是清单.由于我们买一种东西可能不止一次,所以清单中是允许有重复 ...

  7. python字符串 列表 元组 字典相关操作函数总结

    1.字符串操作函数 find 在字符串中查找子串,找到首次出现的位置,返回下标,找不到返回-1 rfind 从右边查找 join 连接字符串数组 replace 用指定内容替换指定内容,可以指定次数 ...

  8. python基础-列表元组字典

    1.列表和元组 列表可以对数据实现最方便的存储.修改等操作 names=["Alex","tenglan","Eric","Rai ...

  9. 【python】列表&&元组&&字典

    列表:用“[]”包裹,可对值增删改. 列表遍历: 方法一: alist=["a","b","c","d","e ...

  10. python的列表 元组 字典

    列表和元组都是序列,是数据元素的集合,数据元素可以是数值.字符串,布尔值.对象等. 一.列表:用方括号定义[] 空列表 names = [] 带值的列表 names = ["bill&quo ...

随机推荐

  1. DeepFaceLab小白入门(5):训练换脸模型!

    训练模型,是换脸过程中最重要的一部分,也是耗时最长的一部分.很多人会问到底需要多少时间?有人会告诉你看loss值到0.02以下就可以了.我会告诉你,不要看什么数值,看预览窗口的人脸.看第二列是否和第一 ...

  2. css制作三角形,下拉框三角形

    网站制作中常常需要下拉框,而如果下拉框如果只是单纯的矩形则会显得太过单调,所以这次教大家利用css制作三角形放在矩形上面 首先利用css制作三角形 div { width:0px; height:0p ...

  3. python-函数的对象、函数嵌套、名称空间和作用域

    目录 函数的对象 函数对象的四大功能 引用 当做参数传给一个函数 可以当做函数的返回值 可以当做容器类型的元素 函数的嵌套 函数的嵌套定义 函数的嵌套调用 名称空间与作用域 名称空间 内置名称空间 全 ...

  4. navicat12.0.24破解方法,简单易操作,亲测可行

    navicat12.0.24 32bit 链接:https://pan.baidu.com/s/1dakPje0AzwE86p6ZRHfnsQ 密码:f1ve 破解文件 链接:https://pan. ...

  5. hdu2604 递推转换矩阵快速幂

    刚开始还以为用位运算与或几下几个循环就搞定了,算着算着发现不行........ 还是一种固定的切题角度,我假设有长度为n,总的排列数位f(n),怎么算他呢?从后往前考虑,因为大多数情况,都是用前面的结 ...

  6. luogu2114 [NOI2014]起床困难综合症

    大约是第一次做近几年NOI题(尽管是签到题)? 制作一个真值表,要是有哪一位原本是0但是能变成1那真是太好啦,要是有哪一位原来是1能变成1并且算上它不会超过m那也不错. #include <io ...

  7. 剑指offer算法编程题目部分汇总(解法略)

    总结一下本书中遇到的大部分面试题.面试题3:二维数组中的查找 题目:在一个二维数组中,每一行都按照从左到右的递增顺序排列,每一列都按照从上到下递增的顺序排列,请完成一个函数,输入这样的一个整数,判断数 ...

  8. 栈的push、pop序列 【微软面试100题 第二十九题】

    题目要求: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1.2.3.4.5是某栈的压栈序列,序列4.5.3.2.1是该压栈 ...

  9. GridView的RowCommand事件中获取每行控件的值

    //获取当前行                GridViewRow gvr = (GridViewRow)((Control)e.CommandSource).Parent.Parent; //获取 ...

  10. rocketmq源码分析2-broker的消息接收

    broker消息接收,假设接收的是一个普通消息(即没有事务),此处分析也只分析master上动作逻辑,不涉及ha. 1. 如何找到消息接收处理入口 可以通过broker的监听端口10911顺藤摸瓜式的 ...