Python 学习第一弹:基本数据类型

python提供了很多数据结构,不过其很多操作都是朴素操作,速度慢时间复杂度参见:https://wiki.python.org/moin/TimeComplexity
可遍历(for): list, string,
判断元素是否存在(in): list, string, tuple
合并: list, string
元素个数(len())
元素和(sum())

string(字符串)

    word = ‘banana‘
    特点: 不可变的列表

list(列表)

    a = [1, ‘abc‘, [a, b, c]]
    特点: 列表有顺序
    操作:
        查询:
            a[l:r](返回该区间的列表)
            a[l:r:k](返回[l, r-1]区间中 步长为k的元素列表)
        插入:
            a.append(b)(尾部插入值b)
        删除:
            del a[i](删除下标为i或者一段区间的元素)
        比较:(以字典序来比较,返回True or False)
            a == b
            a < b
        分片操作:
            a[l:r] = b (将[l,r-1]区间序列替换为序列b 长度不必相同)

ADD:
    列表方法:(一般是对于列表,字符串等适用的方法)
    a = list();
    1> a.append(x) 在末尾添加元素x
    2> a.cound(x) 统计元素x出现次数
    3> a.extend(b) 在末尾添加列表b,相当于a = a + b
    4> a.index(x) 返回第一个元素为x的下标
    5> a.insert(loc, x) 在loc下标处加入元素x
    6> a.pop(loc) 删除下标为loc的元素,若无loc默认最后一个
    7> a.remove(x) 删除第一个值为x的元素
    8> a.reverse() 将列表a反向存放
    9> a.sort() 将列表a进行排序
        此外sort(key, reverse)可以对排序提供比较函数和是否反向排序
        如
        >>>a = [‘aa‘, ‘b‘, ‘ccc‘]
        >>>a.sort(key = len, reverse = True) #按字符串长度比较
        key为比较的对象,默认从小到大排序,若从大到小只需reverse = True

dict(字典)

    dic = {}
    dic = {‘one‘: ‘uno‘, ‘two‘: ‘dos‘, ‘three‘: ‘tres‘}
    特点: 每一项为一个键值对,每个键唯一
    操作:
        查询:
            dic[‘one‘](返回指定键的键值)
            dic.keys()(返回dic所有键的列表)
            dic.values()(返回dic所有键值的列表)
            dic.items()(返回dic所有的键值对(二元组表示)的列表)
        插入:
            dic[a] = b(插入(a,b)的键值对)
        删除:
            dic.pop(i,j)(删除以i为下标的键值对 若不存在返回j)
            dic.clear()(清空字典)
            del dic[b](删除以b为键的键值对)

tuple(元组):

    t = (1,)(区别出表示元组而非数字)
    t = (1, ‘a‘, [1,2])
    特点:不可变
    操作:
        查询:
            dic[l:r](返回l到r-1的元组)
            dic.index(b)(返回值为b的下标)
        用法:
            a, b = b, a (a b交换赋值)
            (1, 2) < (2, 3) (类似字典序方法比较大小)

set(集合):

    s = {1,} #区别出这是集合而非字典
    s = set(‘spam‘)
    s = set([‘a‘, ‘b‘])
    特点: 无重复
    操作:
        查询:
            a in s (返回a是否存在于s集合)
            s|t  s.union(t)(返回s和t并集)
            s&t  s.intersection(t)(返回s和t交集)
            s-t  s.difference(t)(返回s中有t没有的元素集合)
        插入:
            s.add(a)(插入元素a)
        删除:
            s.pop()(删除随机一元素)
            s.remove(a)(删除元素a)
            s.clear()(清空集合s)

  

 
时间: 2024-10-25 22:47:34

Python 学习第一弹:基本数据类型的相关文章

Python学习第一弹——Python环境搭建

一.Python简介: Python,是一种面向对象.解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年.Python语法简洁而清晰,具有丰富和强大的类库.它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起.常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用

python学习第一弹:爬虫(抓取博客园新闻)

前言 说到python,对它有点耳闻的人,第一反应可能都是爬虫~ 这两天看了点python的皮毛知识,忍不住想写一个简单的爬虫练练手,JUST DO IT 准备工作 要制作数据抓取的爬虫,对请求的源页面结构需要有特定分析,只有分析正确了,才能更好更快的爬到我们想要的内容. 打开博客园任何一个新闻页面,比如https://news.cnblogs.com/n/570973/,思路是通过这个源页面,并且根据页面中的“上一篇”.“下一篇”等链接,源源不断的爬取其它新闻内容. 浏览器访问https://

Python学习第三天--数据类型

数据类型: int()  整型 float()浮点型 e记法   (有点像数学中的科学计数法) 知识点概括: 字符相加,结果为和 >>> 520 + 5201040 2.字符串相加,结果为"拼接" >>> '520'+'1314''5201314' 3.逻辑运算,python认为True=1,False=0,(True和False第一个字母必须为大写) >>> True + True 2 >>> True - Tr

FluentData 学习 第一弹

地址: http://fluentdata.codeplex.com/ 前世: FluentData 我们公司用的一个增删改查的里面的持久层.之前还不知道 这个持久层叫FluentData.  某天看见群里 说 某视频网站里面 居然在讲这个开发框架,还收费.我搜了一下.fluentdata有源代码. 这个13年有过记载.不过我是新手.什么也需要 学习一下.  和 室友说了一下微型orm ,他们 呢  用的  微型orm是 Dapper .可以去了解一下. 废话真多,完毕. FluentData

python 学习第一天

python 学习了好久,发现还是个小白,python还是不会用,从今天起每天学写一点小程序,做个打不死的小强. 相关知识:列表,字典 #!/usr/bin/env python people = { 'yong':{'phone':'123', 'addr':'Shang hai' }, 'bu':{'phone':'456', 'addr':'Wu han' }, 'yan':{'phone':'789', 'addr':'He nan' } } lables = {'phone':'pho

Python学习(一)——数据类型

在大学学过一点python,只学了语法,关于实际应用却没怎么用过.现在用一些python的脚本来模拟webservices,挺好用的.这个语言,还是要好好学习学习了. 目前看着教材来的,这本教材,好像还是当年看得那本,<Python学习手册(第四版)>,不过现在用的是eclipse的集成环境,写python也方便了很多. 数学部分的示例: import math print math.pi print math.sqrt(5) import random print random.random

Python基础学习——第一弹

高级语言-------->字节码---------->机器码 低级语言-------->机器码 性能:高级<低级 高级语言的自动垃圾处理机制,方便,开发效率高. php类:快速搭建网站,适用于写网页,有局限性. python/C/java:人工智能. python/java:既能写页面,又能写后台功能. Java执行效率高于python,Java能做的事,python都能做,并且开发效率更高. 数据库才是程序执行速度的元凶. python种类: Jpython IronPython

Python学习第一天

一.Python的简介 1.什么是python? Python(发音:[ 'paiθ(?)n; (US) 'paiθ?n ]),是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定.这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所有的操作系统中运行. 特点: ①可扩充性.新的内置模块(module)可以用C 或 C++写成,而我们也可为现成的模块加上Python的接口: ②清晰的语言.因为它的作者在设计它的时

Python学习总结之二 -- 数据类型

带你走进数据类型 一:整数.浮点数 Python中整数和浮点数的定义以及运算和C++都是一样的,我在这里就不需多说了,我就说明一点:Python相对于C/C++而言,定义整数没有int 和 long long 这些区分的,直接赋值即可.这就体现出了Python简洁的功能. 二:布尔值.空值 首先我们先谈谈Python中的布尔值True和False.在Python中可以直接使用True和False(请注意大小写),也可以通过表达式计算出True或者False. 另外,还有三种常见的布尔运算符and