第一节 认识python

python.exe -V

python 会进入解释器

quit()命令会退出解释器

IDEL,一个python的集成开发环境,能够利用颜色突出语法的编辑器,一个调试工具,Python Shell 以及一个完整的Python3在线文档。

我装了python3.5,那个就是IDEL呀。意思是说我安装了python3.5就是一个IDEL,因为Windows是不带有python解释器的

Mac os  Linux是带有的解释器,解释器就是在终端打开的呀!

释义1:IDLE 是一个纯 Python 下自带的简洁的集成开发环境(IDE) [1] 。

那么问题来了 PyCharm是什么也是一个IDEL吗

PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。
 难道不需要为列表声明类型信息吗?
为什么不要,因为Python的变量标识符没有类型
数据项自下而上堆放
 
列表方法:len()  append()  pop()  extend()  remove()  insert()
 
有的有返回值有的没有返回值
 
什么?在列表中混合不同的类型?可以在列表中存储任意类型的数据
 
当我插入了之后,还要考虑到,列表扩大了
 
python 的for循环就是为了处理列表和Python中的其他迭代结构。列表就是最常用的迭代数据结构,
for while if  走天下
有意思,在列表中存储列表
判断数据类型,isinstance(names,list)判断names是不是list
看其如何从列表引到循环再到函数
 
 
不要重复代码;应当创建一个函数
按照他的做法 i k 可以一样吗?  引入了递归
利用函数和递归,你已经解决了先前处理列表的代码中存在复杂性问题。
列表,for,函数,递归   (我的第一节python工具箱)isinstance
 
第二节 共享你的代码
 
我真的想分享……但是如果没有模块我怎么起作用呢?
可重用的代码固然不错,不过可共享的模块更棒
》》模块允许你合理组织代码来实现最优共享
》》发布工具允许你向全世界共享你的模块
我听说第三方Python模块都放在PyPI(Python Package Index,包索引)上
Python标准库里已经预加载了大量模块
模块就是一个包含Python代码的文本文件。对模块的主要需求就是要求文件问以.py结尾,
import 语句告诉Python将nester.py模块包含在程序中。
import nester  会报错  说print_lol is not defined  引出Python的模块实现命名空间
 
从模块发布到注释,到引入,到命名空间
 
没错,命名空间就像是姓氏。假设你目前正在有个命名空间中,如果想指示另外一个模块命名空间中的某个函数,就需要用该模块的命名空间对这个函数的调用做出限定。:首先是模块名,然后是一个点好,在后面是函数名
如果使用from nester import print_lol,会指定的函数(这里是print_lol)增加到当前命名空间中,这样一来,就不必在使用命名空间限定。
选择包含字母(大写和小写),数字和特殊字符的强密码。避免常用词或重复。
以后大写第一个大写,特殊字符@

然后又告诉我们参数要一致,因为有了参数之后就会变成必填的了

然后又出了一个可选参数,增加了一个缺省值是的“level”变成一个可选的参数   level = 0

Python术语:

    PyPI  就是Python包索引(Python package index)这个网站很值得访问的

    Python内存中的名字就存放在“命名空间”中

    Python的主命名空间名为__main__

模块(python代码的文本文件)

 

 第三章 文件与异常
程序模型:首先是输入数据,进行处理,然后存储,显示,打印或传输
 
如何从文件中读取数据呢?with open(‘打开的文件’)as f ?
              f.read()
Python中的基本输入机制是基于行的:open()与for语句结合使用     打开,处理,关闭
sketch.py 什么

项目描述

基本

这个工具可以用来以图形涂鸦的形式“记笔记”,就像用铅笔,钢笔,Sharpie(tm)或类似的东西在一张小纸上画它们一样。它没有按设计提供任何特殊选项。你得到一个画布,可以画上它,用一个固定大小的黑色笔......就是这样。

如果你正在寻找更多花哨的东西,那里有很多好的绘图应用程序(gimp,inkscape,......)。去挑选其中一个,例如,如果您需要特殊的刷子形状,并附带动力学。

我尽量保持pysketch的简约越好,这样我可以专注于什么我画画,而不是 如何我画它。

 
the_file  = open(sketch.py)-------打开
# Do something with the data
#in "the_file".   ----- 处理
the_file.close()   ----关闭
print(data.readline(),end = ' ')  ???   printBIF自带  end = ‘’   ???
 
split()方法返回一个字符串列表,这是多重赋值,可以赋值一个目标标识符列表    以什么进行分开,所以是有参数的,也有返回值
(role,line_spoken) = each_line.split(":")
Python实际上右两种类型的列表:一种是可以改变的列表(用中括号包围),另一种一旦创建就不能改变(用小括号包围)。后者一种不可变列表,叫元祖。可以认为元祖等同于列表,可以认为是一个常量列表,因为里面的数据不可以改变
find()可以找到字符串的子串,会返回它的索引位置,找不到返回-1
 
if not each_line.fine(':')== -1:
 
文件打开-->引出异常try/except   可能出错的代码/错误恢复代码
你疯了吗?你真的让错误发生?
 
try:
  ....
except:
  pass
忽略了这个错误,也不会显示这个代码,就像前面的 if  一样   选择跳过,显示正确的代码
if else  是分析了这出错代码的原因然后解决,那要是分析不出来呢?
 
if  os.path.exist('sketch.txt'):       os中提供的检测文件是否存在
 
记住在可能出现错误之前的代码加上try
 
需要以一种不那么一般化的方式使用except
特定指定异常    except ValueError
       except IOError
 
open()
readline()
seek()
close()
split()
tuple
ValueError(数据不符合期望的格式是会出现)
IOError(数据无法正常访问会出现,可能数据文件被移走或者重命名)
help()
find()
not
try/except
pass
 
 
 
 
  
 
 

2019.03.30 Head first的更多相关文章

  1. 2019.03.30 图解HTTP

    文章来源<图解HTTP> 第一章 了解Web及网络基础 你有想过当你在浏览器(web browser)的地址栏上输入URL时,Web页面是如何实现的吗? 嗯,好像也没想过 web使用一种名 ...

  2. 2019.03.30 Dialog demo 一个标准使用的dialog程序

    PROGRAM zdemo_dialog. INCLUDE zdemo_dialogtop. INCLUDE zdemo_dialogo01. INCLUDE zdemo_dialogi01. INC ...

  3. [2019.03.25]Linux中的查找

    TMUX天下第一 全世界所有用CLI Linux的人都应该用TMUX,我爱它! ======================== 以下是正文 ======================== Linu ...

  4. 2019.03.03 - Linux搭建go语言交叉环境

    编译GO 1.6版本以上的需要依赖GO 1.4版本的二进制,并且需要把GOROOT_BOOTSTRAP的路径设置为1.4版本GO的根目录,这样它的bin目录就可以直接使用到1.4版本的GO 搭建go语 ...

  5. 2019.3.28&2019.3.30考试

    2019.3.28 : 肥肠爆芡,因为这场考试的题太屑了,所以我咕咕了 Upd on 2019.3.30 压进来一篇(因为都没啥意义) 2019.3.30 : 全机房读错题+没有大样例=T2全体爆炸 ...

  6. Alpha冲刺(7/10)——2019.4.30

    所属课程 软件工程1916|W(福州大学) 作业要求 Alpha冲刺(7/10)--2019.4.30 团队名称 待就业六人组 1.团队信息 团队名称:待就业六人组 团队描述:同舟共济扬帆起,乘风破浪 ...

  7. Cheatsheet: 2019 03.01 ~ 04.30

    Golang How To Install Go and Set Up a Local Programming Environment on macOS Build A Go API 40+ prac ...

  8. [2019.03.16]使用DOM操作函数和CSS选择器来针对已有的HTML进行只凭JS的改动

    刚入职的时候看到公司用的HTML日志生成工具附带的Panel,工具不够用,找个Fail还要找半天,于是自己琢磨着添砖加瓦.以前也是个半吊子前端工程师,现在可倒好,想要改页面却连页面生成的模板在哪里都不 ...

  9. 2019.03.25 bzoj4539: [Hnoi2016]树(主席树+倍增)

    传送门 题意:给一棵大树,令一棵模板树与这棵树相同,然后进行mmm次操作,每次选择模板树中的一个节点aaa和大树中一个节点bbb,把aaa这棵子树接在bbb上面,节点编号顺序跟aaa中的编号顺序相同. ...

随机推荐

  1. 7.11登入表单html

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. Spring mvc 接口枚举类型数据格式化处理

    一.背景简述 首先,我们都知道枚举实例有两个默认属性,name 和 ordinal,可通过 name()和ordinal()方法分别获得.其中 name 为枚举字面量(如 MALE,FEMALE),o ...

  3. AutoFac Ioc依赖注入容器

    本文原著:牛毅  原文路径 http://niuyi.github.io/blog/2012/04/06/autofac-by-unit-test/ 理解IOC容器请看下图: 没有使用IOC容器的情况 ...

  4. [No0000163]卷福、神秘博士和一群老戏骨表演群口相声:To be or not to be该咋念,简直高潮迭起

        'To be or not to be, that is the question',<哈姆雷特>中这句经典台词到底应该怎么念? 这是古今无数哈姆雷特演员最爱琢磨的问题,一千个人就 ...

  5. spring boot拦截器WebMvcConfigurerAdapter,以及高版本的替换方案

    Springboot中静态资源和拦截器处理(踩了坑)   背景: 在项目中我使用了自定义的Filter 这时候过滤了很多路径,当然对静态资源我是直接放过去的,但是,还是出现了静态资源没办法访问到spr ...

  6. window.onresize监听事件

    window.onresize监听事件 onresize 事件会在窗口或框架被调整大小时发生. 支持onresize的标签:<a>, <address>, <b>, ...

  7. 开启spark日志聚集功能

    spark监控应用方式: 1)在运行过程中可以通过web Ui:4040端口进行监控 2)任务运行完成想要监控spark,需要启动日志聚集功能 开启日志聚集功能方法: 编辑conf/spark-env ...

  8. Mac上安装使用MYSQL以及Navicat数据库管理和PHP服务器配置

    1.Apache服务器   Mac OS X内置Apache服务器,但默认没有启动 查看Apache版本: sudo apachectl -v 启动.关闭.重启Apache: sudo apachec ...

  9. Python操作Mysql数据库进阶篇——查询操作详解(一)

    前面我们已经介绍了在Python3.x中如何连接一个Mysql数据库,以及怎么样对这个数据库创建一个表,增删改查表里的数据.想必大家对Mysql数据库和简单的sql语句有了一定的了解,其实sql语句博 ...

  10. Oracle 锁的等级

    ORACLE里锁有以下几种模式: 0:none 1:null 空 2:Row-S 行共享(RS):共享表锁,sub share 3:Row-X 行独占(RX):用于行的修改,sub exclusive ...