python中基础的数据类型包括:

  1 Number(数字)

  2 String(字符串)

  3 List(列表)

  4 Tuple(元组)

  5 set(集合)

  6 Pictionary(字典)

按照可变数据和不可变数据来区分:

  不可变数据(3个):Number(数字),String(字符串),Tuple(元组)
  可变数据(3个):List(列表),Dictonary(字典),set(集合)

创建方式:

  创建列表: listT=[1,2,3,4,5]

  创建元组:tup2=(1,2,3,4,5)

  创建字典:dict2={"abc":123,"def":789}

  创建集合:student={'Tom','Jim','Mary'}

列表:列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)【插入数据可重复,数据不唯一】

  1. listT=[,"",(,,,),[,,],{"":},{,,}]    #列表可以存储数据类型:数字,字符,元组,列表,字典,set
    print listT #得:[, '', (, , , ), [, , ], {'': }, set([, , ])]

元组:元组(tuple)与列表类似,元组不能二次赋值。【元组本身是只读对象,如果元组中的对象是可变类型数据,可变类型数据依然可以修改】

  1. tuple=(1,"",(3,4,5,6),[7,8,9],{"":11},{12,13,14})    #元组可以存储数据类型:数字,字符,元组,列表,字典,set
  2. print tuple
  3. print tuple[0]
  4. print tuple[3]
  5. tuple[3][0]=77
  6. print tuple[3]
    一下为输出测试结果:

#(1, '2', (3, 4, 5, 6), [7, 8, 9], {'10': 11}, set([12, 13, 14]))
# 1
#[7, 8, 9]
#[77, 8, 9]

字典:列表是有序的对象集合,字典是无序的对象集合【键必须是唯一的,但值则不必;值可以取任何数据类型,但键必须是不可变的】

  1. dict2={1:1,"2":"2",(3):(3)}
  2. print dict2 #得 {3: 3, 1: 1, '2': '2'} 元组类型发生了改变
  1. dict2={1:1,"2":"2",(3,2):(3,2)}
    print dict2  #{1: 1, (3, 2): (3, 2), '2': '2'} 元组未发生改变
  1. dict2={1:1,"2":"2",(3,2):(3,2),4:[5],"5":{"66":"66"},(3):{"77","88"}} #键必须是不可变的,值可以是任何类型:依次为数字,字符,元组,列表,字典,set集合
    print dict2 #得 {1: 1, (3, 2): (3, 2), 3: set(['77', '88']), 4: [5], '2': '2', '5': {'66': '66'}}

集合:set是一个无序的不重复元素序列

  1. set={1,"",(3,2)}
  2. print set # 得:set([1, (3, 2), '2']) ;看到数据结构后着实让人发现原来set集合内部结构也是一个列表。这就不难理解为啥可以用set给list列表去重
  1. set={1,"2",(3,2)}      #集合只能存放不可变类型,可变类型放入后会报错
    print set
    list=[4,5,6]
    dict2={"9":"10"}
    set={6,7,8}
    #set.add(list) #TypeError: unhashable type: 'list'
    #set.add(dict2) #TypeError: unhashable type: 'dict'
    #set.add(set) #TypeError: unhashable type: 'set'

面试常问问题:

  1  list列表可以存储的类型结构:数字,字符串,元组,列表,字典,set

  2  tuple元组可以存储数据类型:数字,字符,元组,列表,字典,set

  3  dict字典可以存储数据类型:分别说:键(不可变),值(数字,字符,元组,列表,字典,set集合)

  4  set集合可以存储数据类型:不可变类型(数字,字符,元组)

未完待续》》

  补充数据类型转换

  

  

  
  

python 2.7 数据结构: 基础面试总结的更多相关文章

  1. Python之数据结构基础

    一.数据结构基础     a.什么是数据结构          b.数据结构的分类         c.列表           import random from timewrap import ...

  2. 2018传智黑马Python人工智能视频教程(基础+就业+面试)

    2018传智黑马Python人工智能视频教程(基础+就业+面试) 2018传智黑马Python人工智能视频教程(基础+就业+面试) 2018传智黑马Python人工智能视频教程(基础+就业+面试) 下 ...

  3. python服务端工程师就业面试指导☝☝☝

    python服务端工程师就业面试指导 由Python专业面试官打造的课,少之又少,专业代表着经验,代表着对考察点的通透理解,更代表着对你负责 第1章 Python工程师offer直通车(视频+教辅文档 ...

  4. 8.python笔记之面向对象基础

    title: 8.Python笔记之面向对象基础 date: 2016-02-21 15:10:35 tags: Python categories: Python --- 面向对象思维导图 (来自1 ...

  5. Python运维开发基础-概述-简介

    Python基础知识分为以下几块 1.Python概述 2.基础语法 3.数据结构 4.Python进阶 5.实训案例 一.Python概述 1.Python简介 2.Hello World 3.搭建 ...

  6. Python中的数据结构和算法

    一.算法 1.算法的时间复杂度 大 O 记法,是描述算法复杂度的符号O(1) 常数复杂度,最快速的算法. 取数组第 1000000 个元素 字典和集合的存取都是 O(1) 数组的存取是 O(1) O( ...

  7. Python学习课程零基础学Python

    python学习课程,零基础Python初学者应该怎么去学习Python语言编程?python学习路线这里了解一下吧.想python学习课程?学习路线网免费下载海量python教程,上班族也能在家自学 ...

  8. Python 中的数据结构总结(一)

    Python 中的数据结构 “数据结构”这个词大家肯定都不陌生,高级程序语言有两个核心,一个是算法,另一个就是数据结构.不管是c语言系列中的数组.链表.树和图,还是java中的各种map,随便抽出一个 ...

  9. JAVA多线程和并发基础面试问答(转载)

    JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...

随机推荐

  1. [模板] BSGS/扩展BSGS

    简介 前置知识: 快速幂&&O(1)快速乘 [模板] 数学基础:快速幂/乘/逆元/exGCD/(ex)CRT/(ex)Lucas定理

  2. [模板] CDQ分治&&BZOJ3262:陌上花开

    简介 CDQ分治是分治的一种, 可以看做归并排序的扩展, 利用离线将一些 \(O(n)\) 的暴力优化到 \(O(log n)\). 它可以用来顶替一些高级(log)数据结构等. 一般地, CDQ分治 ...

  3. openstack oslo.messaging库

    openstack oslo.messaging库 2017年04月13日 22:13:25 li_101357 阅读数:1383   版权声明:本文为博主原创文章,未经博主允许不得转载. https ...

  4. [OI]Noip 2018总结(普及)

    考砸了,还有原谅我代码十分有限的可读性. 一个人的真正伟大之处就在于他能够认识到自己的渺小.——保罗 从一年前初一九月到现在18年10月接触OI已经有一年了.几次模拟赛也自我感觉良好,都过了一等的线, ...

  5. Magento2 可配置产品解决SKU流程

    选择可配置产品: 填写必填信息与库存 创建配置 执行四步后完成创建:4.1:选择需要的规格属性: 4.2:选择组合需要的属性值:4.3:根据您的选择,将创建3个新产品.使用此步骤自定义新产品的图像和价 ...

  6. C/C++ const

    一 含义 const修饰的变量在C和C++中的含义是什么?一样吗? 在C中用const修饰的变量仅仅表示这个符合表示的变量不能被赋值,是只读的,那么它与常量有啥区别呢?区别就是一个是常量,一个是变量. ...

  7. 20175221 2018-2019-2 《Java程序设计》第一周学习总结

    20175221 2018-2019-2 <Java程序设计>第一周学习总结 教材学习内容总结 本周通过观看书本配套视频,学到了如解释器,编译器等一些简单概念. 还懂得了java的一些简单 ...

  8. Self-organizing Maps及其改进算法Neural gas聚类在异常进程事件识别可行性初探

    catalogue . SOM简介 . SOM模型在应用中的设计细节 . SOM功能分析 . Self-Organizing Maps with TensorFlow . SOM在异常进程事件中自动分 ...

  9. 第十五节: EF的CodeFirst模式通过DataAnnotations修改默认协定

    一. 简介 1. DataAnnotations说明:EF提供以特性的方式添加到 domain classes上,其中包括两类:  A:System.ComponentModel.DataAnnota ...

  10. Excel 当前行高亮

    格式-条件格式-条件(公式)- =ROW()=CELL("row") 再选颜色...即可.