小结:

总体上,python是解释型语言,开源比较好,速度较慢,装逼神器,解释器较常用的是CPython,安装后python进入运行环境 exit()退出

第一个hello world : print('Hello World') # 看起来的确非常高效,脚本语言的确厉害

编写方式:1 python进入命令行交互模式 2 编写.py文件 # 命令行方式会把每一步结果显示,py文件只会把应该显示的显示出来

输入:input()   print() # 逗号会变为空格 输入返回的是字符串 print会自动换行

基本语法:注释# 对大小敏感 冒号和缩进表示代码块 help看帮助信息

数据类型:1 整数(0x代表十六进制) 2 浮点数(支持1.2e-5的写法) 3 字符串(一般用单引号)支持转义字符 r表示'''内部字符不转义 4 布尔值True False (and or not运算) 非空 非0都为True5 空值 None

变量:1 命名 英文、数字、下划线组成 不能数字开头(Java有$) 2 不用指定变量类型,属于动态语言 3 留意赋值时通常只是返回地址,变量其实就是对象

常量:约定是全部大写

除法:/   //  %

字符串:1 ord()获取字符整数表示 chr()将编码转为字符 2 encode 编码 decode解码 3 len()计算长度 4 格式化输出 %s %d %f %x 一个变量% 多个变量% ()

list(类似动态数组):1 初始化[] 2 索引顺序从0开始,倒序从-1开始 3 属于广义数组,其中变量可以是任何类型 4 append添加元素 5 insert 插入元素 6  pop() pop(i) 删除元素 ,返回被删除的变量 7 替换采用索引加直接赋值

tuple(类似静态数组):1 初始化() 2  如果只定义一个数 必须(1,)

条件判断:1 if 记得冒号和缩进 2 elif 等效于 else if

range(N)生成一个整数序列 通过list()转为list 包含0 range(1,N)不包含0

循环:1 for  x  in 有点像遍历 2 while 循环

dict(哈希表):1 定义 {key:value, key:value} 或者 d=dict(key=value,key=value)2 pop(key) 删除 3 增加的话直接p(key)=value就行 4 key不可变 所以list不能为key

对变量操作一般是对变量指向的对象进行操作,所以很强调可变 不可变

函数:1 help看帮助文档 2 函数是个对象,函数名只是个引用 和C语言不同 3 定义 def + 函数名+参数列表+代码块+return 3 命令行需要... 4 保存为my.py文件,需要from my.py import my_abs 5 空函数 pass  6 可以返回多个值,其实返回的是一个省略括号的tuple 7 可以设置默认参数,然后按位置传参 默认参数最好不要是可变的 8 还是不怎么清晰

切片:[0:3] [-2:] [-2:-1] [::5] [:10:2]

迭代:1 for x in 2 判断是否是可迭代对象 isinstance(  , Iterable)

列表生成式:很强大

生成器:可以节省空间,不过感觉暂时用不到

迭代器:基本概念,暂时用不着

高阶函数(函数其实也是对象):1 map (f, Iterable)是一个作用序列,返回的是Iteror,需要list()将所有序列计算出来  2 reduce 类似递归,要求f必须有两个参数 3 filter 过滤序列 4 sorted 传入key函数 传入reverse函数

5 支持闭包 6 支持匿名函数 7 装饰器看起来很有用 ,暂时用不上 8 支持偏函数

模块化:1 每一个py文件就是一个模块,可以引入包来分层,但每个包下必须有__init__.py文件才会被识别为包,和Java不同 2 每次导入的其实都是模块 3 设置pythonpath

类:1 构造器 __init__(self,   ) 2 实例函数用self作为参数 3 class 类名(父类) 4继承、多态 5 type()看类型 6 isinstance()看实例 7 dir()看所有属性和方法 8 还有一些特别的操作方法,感觉鸡肋 9 支持类属性 10

__ 将变量设为私有的 11 可以动态增加属性和方法 12 还有些经典的类方法,如__len__是为了能够使用len()函数

类高级:1 __slots__可以限制属性 2 @property可以把方法变为属性  3 支持多继承 4 支持枚举类 5 元类不懂

文件操作:1 读 f=open('  ', 'r')文本文件 rb二进制文件  f.read()读取全部 f.readLines()一行 f.read(size) f.close()关闭 with open() as f: print(f.read()) 指定给编码:encoding= 错误处理 errors= 2 写 with open('test.txt','w') as f:f.write('Hello World')

内存读写:StringIO BytesIO

序列化

疑惑:模块弄那么多干什么 参数列表不清晰  @property不清楚 元类不懂

Python strip() 方法用于移除字符串头尾指定的字符(默认为空格)

python学习第三天的更多相关文章

  1. python学习第三次记录

    python学习第三次记录 python中常用的数据类型: 整数(int) ,字符串(str),布尔值(bool),列表(list),元组(tuple),字典(dict),集合(set). int.数 ...

  2. Python 学习 第三天 课后总结:

    PYTHON学习第三天课后总结: 1,注释:就是对代码起到说明注解的作用.   注释分为单行注释与多行注释.  单行注释:只注释一行代码在需要注释的所在行的行首使用#号来注释此行,注意#与代码之间需要 ...

  3. Python学习(三) 八大排序算法的实现(下)

    本文Python实现了插入排序.基数排序.希尔排序.冒泡排序.高速排序.直接选择排序.堆排序.归并排序的后面四种. 上篇:Python学习(三) 八大排序算法的实现(上) 1.高速排序 描写叙述 通过 ...

  4. Python学习-第三天-面向对象编程基础

    Python学习-第三天-面向对象编程基础 类和对象 简单的说,类是对象的蓝图和模板,而对象是类的实例.这个解释虽然有点像用概念在解释概念,但是从这句话我们至少可以看出,类是抽象的概念,而对象是具体的 ...

  5. python 学习(三)

    按照上次python 学习(二)的思路,第一步要实现从一个网站的页面上自动获取指定列表中的信息.折腾数日,得到一段可以正常运行的代码,如下: #web2.py import re import url ...

  6. python学习(三):matplotlib学习

    前言:matplotlib是一个python的第三方库,里面的pyplot可以用来作图.下面来学习一下如何使用它的资源. 一.使用前 首先在python中使用任何第三方库时,都必须先将其引入.即: i ...

  7. webdriver(python) 学习笔记三

    知识点:简单的对象定位 对象的定位应该是自动化测试的核心,要想操作一个对象,首先应该识别这个对象.一个对象就是一个人一样,他会有各种的特征(属性),如比我们可以通过一个人的身份证号,姓名,或者他住在哪 ...

  8. [Python学习] 模块三.基本字符串

            于Python最重要的数据类型包含字符串.名单.元组和字典.本文重点介绍Python基础知识. 一.字符串基础         字符串指一有序的字符序列集合,用单引號.双引號.三重(单 ...

  9. PYTHON学习(三)之利用python进行数据分析(1)---准备工作

    学习一门语言就是不断实践,python是目前用于数据分析最流行的语言,我最近买了本书<利用python进行数据分析>(Wes McKinney著),还去图书馆借了本<Python数据 ...

  10. python学习第三次

    while循环 表示当条件成立的时候就循环适用于不知道具体循环次数,但是确定在某个条件成立的情况下就循环while语法:while 条件表达式:语句块#另一种表达方式while 条件表达式:语句块1e ...

随机推荐

  1. POJ 1190(深搜)

    http://poj.org/problem?id=1190 又有好久没做搜索的题了,没想到做一个卡了我那么久,想哭啊. 一个中文题,思路呢也就是搜索呗,一层一层往上面搜,不过这里有两个比较重要的地方 ...

  2. POJ 1917

    http://poj.org/problem?id=1917 poj的字符串的一道水题. 题意么无关紧要, 反正输出的第一行就是把那个<>去掉,s1<s2>s3<s4&g ...

  3. Selenium WebDriver 处理table

    首先,html table是由 table 元素以及一个或多个 tr.th 或 td 元素组成. for example: 这是一个简单的html table: 源码如下: <html> ...

  4. Effective C++ -----条款14: 在资源管理类中小心copying行为

    复制RAII对象必须一并复制它所管理的资源,所以资源的copying行为决定RAII对象的copying行为. 普遍而常见的RAII class copying行为是:抑制copying(使用私有继承 ...

  5. CentOS7 win7 u盘装双系统 修复系统

    环境: ASUS MB VER K45VD 笔记本电脑一台( i5-3230M 处理器. SATA . Nvidia). Windows7 系统 在 win7 下安装 CentOS7 使用 Ultra ...

  6. 【leetcode】Balanced Binary Tree(middle)

    Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary ...

  7. 【编程题目】输入两个整数 n 和 m,从数列 1,2,3.......n 中 随意取几个数, 使其和等于 m ... ★

    第 21 题(数组)2010 年中兴面试题编程求解:输入两个整数 n 和 m,从数列 1,2,3.......n 中 随意取几个数,使其和等于 m ,要求将其中所有的可能组合列出来. 我的思路: 从小 ...

  8. linux初体验

    linux系统和window一样,也是一套独立的操作系统,它只是没有图形化界面而已

  9. Stanford大学机器学习公开课(三):局部加权回归、最小二乘的概率解释、逻辑回归、感知器算法

    (一)局部加权回归 通常情况下的线性拟合不能很好地预测所有的值,因为它容易导致欠拟合(under fitting).如下图的左图.而多项式拟合能拟合所有数据,但是在预测新样本的时候又会变得很糟糕,因为 ...

  10. 点击按钮对两个div的隐藏与显示进行切换

    HTML: <button type="button"  id="showHidden">点击切换div的隐藏与显示</button> ...