python_head_first笔记
python教程/学习笔记
无论什么情况下,使用UTF-8 才是王道! 1 # -*- coding:utf-8 -*2 2.2.5. 导入 通常应该在单独行中使用导入。 例如:No: import sys, os Yes: import sys import os 但是这样也是可以的: from types import StringType, ListType imports 应该放在文件的顶部,仅在模块注释和文档字符串之后,在模块的全局变量和常量之前。 Imports 也是有顺序的:1)Python 标准库的import;2)第三方库的import;3)自定义的库的import; 并且在每组的import 之间使用一行空行分割。 2.2.6.以下地方不推荐出现空格: 1) 紧挨着圆括号,方括号和花括号的 如:"spam( ham[ 1 ], { eggs: 2 } )".写成"spam(ham[1], {eggs: 2})". 2) 紧贴在逗号,分号或冒号前的 如: "if x == 4 : print x , y ; x , y = y , x". 写成"if x == 4: print x, y; x, y = y, x". 3) 紧贴着函数调用的参数列表前开式括号的 如: "dict ['key'] = list [index]". 写成"dict['key'] = list[index]". 4) 紧贴在索引或切片下标开始的开式括号前 如: "dict ['key'] = list [index]".写成"dict['key'] = list[index]". 5) 在赋值(或其它)运算符周围的用于和其它并排的一个以上的空格,如: 1x=1 2y=2 3 long_variable = 3 写成 1x=1 2y=2 3 long_variable = 3 6)始终在这些二元运算符两边放置一个空格:赋值(=), 比较(==, <, >, !=, <>, <=,>=, in, not in, is, isnot), 布尔运算(and, or, not). 按 你的看法在算术运算符周围插入空格. 始终保持二元运算符两边空格的一致.一些例子: 1 i = i+1 2 submitted = submitted + 1 3 x = x*2 - 1 4 ypot2 = x*x + y*y
千锋教育 宋宋 python基础笔记
【主题】千锋教育宋宋 Python基础笔记近年来,随着人工智能技术的发展和应用,编程语言 Python 也逐渐成为了热门话题。
作为一种易学易用且功能强大的编程语言,Python 在各行各业都有着广泛的应用。
为了系统地学习Python编程,我选择了千锋教育的宋宋老师的Python基础课程,并从中整理出了以下笔记,以供大家参考。
一、Python基础概述1.1 Python简介Python是一种高级编程语言,具有简洁、清晰和易读的特点。
它被广泛应用于数据科学、人工智能、网络开发等领域。
1.2 Python的特点Python具有简单易学、开源免费、跨评台、强大的标准库等特点,因此备受程序员的喜爱。
1.3 宋宋老师的教学风格宋宋老师以通俗易懂的语言进行讲解,深入浅出地介绍Python编程的基础知识,让学习者能够轻松理解和掌握。
二、Python基础语法2.1 变量与数据类型Python中的变量不需要事先声明,直接赋值即可创建,而且可以灵活地改变数据类型。
2.2 控制流程Python中的控制流程包括顺序结构、分支结构和循环结构,通过这些结构可以灵活控制程序的执行流程。
2.3 函数与模块函数是Python中的重要概念,通过函数可以封装可重复使用的代码。
而模块则是一个包含Python定义和语句的文件,用来组织代码。
三、Python基础应用3.1 文件操作Python可以轻松地进行文件的读写操作,包括文本文件和二进制文件。
3.2 异常处理Python中的异常处理能够帮助程序更加健壮地运行,避免因错误而导致程序崩溃。
3.3 数据结构Python中有多种数据结构,如列表、元组、字典和集合,能够满足不同场景下的数据存储和处理需求。
四、个人观点与总结通过学习千锋教育宋宋老师的Python基础课程,我对Python编程语言有了更深入的了解和掌握。
宋宋老师的教学风格深受我喜爱,他的讲解通俗易懂,让我快速掌握了Python编程的基础知识。
语雀python笔记
语雀python笔记以下是语雀(Yuque)上的一篇关于Python的笔记,供您参考:Python笔记:从入门到实践摘要:本篇文章旨在帮助读者快速了解Python编程语言的基础知识和常用实践。
通过学习本篇文章,您将掌握Python的基本语法、数据类型、控制流、函数等概念,并学会编写简单的Python程序。
引言Python是一种广泛使用的编程语言,以其易读性、简洁性和强大的库支持而闻名。
无论您是初学者还是经验丰富的程序员,学习Python都将为您带来许多好处。
在本篇文章中,我们将通过一系列简单的步骤和示例,引导您逐步了解Python的基础知识和常用实践。
一、Python基础1. 安装Python首先,您需要安装Python解释器。
您可以从Python官网下载并安装最新版本的Python。
安装完成后,您可以在命令行中输入`python --version`来验证Python是否成功安装。
2. Hello World程序在Python中,一个简单的Hello World程序可以这样写:```pythonprint("Hello, World!")```3. 注释在Python中,我们使用``符号来添加注释。
注释可以帮助我们理解代码的功能和作用。
例如:```python这是一个注释print("Hello, World!") 这也是一个注释```4. 变量在Python中,变量用于存储数据。
我们使用`=`符号来给变量赋值。
例如:```pythonname = "Alice"age = 25```5. 数据类型Python支持多种数据类型,如整数、浮点数、字符串、列表、元组、字典等。
例如:```pythonnum = 123 整数类型float_num = 浮点数类型str_num = "456" 字符串类型```。
python_head_first笔记
英语单词Redundance: 冗余,多余Intentional:故意的,企图的,策划的stuff[stʌf]n.材料, 原料; 物品, 东西; 木料; 纺织品v.塞满, 填充, 填满; 饱食, 吃得过多indented[in·dent·ed || ɪn'dentɪd]adj.锯齿状的; 受契约约束的; 缩进排印的blown1[bləʊn]adj.喘气的; 被苍蝇弄赃的; 精疲力竭的; 有蝇卵附着的; 吹制的blown (blow)2[bləʊn]v.吹, 刮; 随风飘动; 吹动; 吹响, 鸣响; 吹; 吹掉; 吹动; 刮走; 使开花; 开blow[bləʊ]n.吹动, 吹气; 吹牛, 自夸; 强风, 暴风#一击, 殴打; 不幸; 打击; 精神上的打击#开花v.吹, 刮; 随风飘动; 吹动; 吹响, 鸣响; 吹; 吹掉; 吹动; 刮走; 使开花; 开full blown完全成熟的; 具有一切特征的; 充分发展的scratch[skrætʃ]v.抓, 搔(痒), 划破, 划掉n.抓痕, 乱写,抓的声音, 起跑线adj.无让步的tricky['triki]adj.棘手的, 狡猾的, 巧妙的shrink[ʃrɪŋk]n.收缩, 畏缩, 萎缩v.收缩, 萎缩, 退缩; 使收缩, 使缩小appropriate[ap·pro·pri·ate || ə'prəʊprɪət]v.拨出; 挪用, 盗用; 占用adj.适当的, 恰当的, 相称的pickle ['pikl]n.腌汁, 泡菜, <英口>淘气鬼, <口>困境v.腌, 泡comprehend[com·pre·hend || ‚kɒmprɪ'hend]v.领会; 包括; 理解duplicate[du·pli·cate || 'djuːplɪkət]n.副本, 复制品, 复本adj.复制的, 二重的v.复制; 影印, 拷贝; 复写; 重复sanitize['sænitaiz]vt. 采取卫生措施使其安全, 消毒, 使无害1.Meet pythonPython is a lot like any other general-purpose programming language, with statements, expressions , operators , functions , modules, methods, and classes .IDEL是Python的编辑环境,TAB键可以给出提示语句Alt-P重复之前的命令,比如上一个命令是print,再向上是1+2命令,则按一次Alt-P会出现print命令,按两次出现1+2命令Alt-N重复下一个命令,其实是循环到第一个命令。
python知识点总结讲义
python知识点总结讲义一、Python 的基础语法Python 的基础语法非常简单,但是功能强大,适合初学者入门。
Python 的语法特点包括:1. 代码块使用缩进来表示,而不是使用大括号。
这使得 Python 的代码更加简洁和易读。
2. 变量不需要提前声明,可以直接赋值使用。
3. Python 支持多种数据类型,包括整数、浮点数、字符串、列表、元组、字典等。
4. Python 支持条件语句(if-else)、循环语句(for、while)、函数定义等常见的控制结构。
5. Python 的函数和模块化设计非常灵活,支持函数的嵌套和递归调用。
二、Python 的核心特性Python 作为一种高级编程语言,具有许多独特的核心特性,使其在软件开发中具有独特的优势。
其中包括以下几点:1. 简单易学:Python 的语法非常简单易懂,适合初学者入门。
对于有其他编程语言基础的人,也很容易上手。
2. 面向对象:Python 是一种面向对象的编程语言,支持类、对象、继承、多态等面向对象的特性。
3. 动态类型:Python 的变量是动态类型的,不需要提前声明变量的类型,可以根据赋值自动推断变量的类型。
4. 强大的标准库:Python 的标准库非常强大,包含了大量的模块和函数,能够满足各种开发需求。
5. 可移植性强:Python 可以在各种操作系统上运行,在 Linux、Windows、Mac 等平台都可以运行。
三、Python 的数据类型和数据结构Python 支持多种数据类型和数据结构,包括整数、浮点数、字符串、列表、元组、字典等。
其中,列表和字典是 Python 中非常重要的数据结构,具有很强的灵活性和适应性。
1. 整数和浮点数:Python 支持整数和浮点数,可以进行整数和浮点数的加减乘除等操作。
2. 字符串:Python 的字符串可以使用单引号、双引号或三引号来表示,支持字符串的切片、拼接、查找、替换等操作。
计算机学习相关书籍
计算机学习相关书籍大学计算机专业使用的教材可以根据不同学校和课程有所不同,下面是楼主收集的一些经典(大部分是国外)的计算机专业教材:------C++------1.C++ Primer Plus C++ Primer习题集第5版,(美)李普曼,2.P520 C++ Primer(第5版)带书签高清完整版3.C++ Templates4.C++大学教程5.C++对象模型6.C++并发编程实战7.C++标准程序库—自修教程与参考手册8.C++沉思录中文第2版9.C++程序设计语言10.C++编程思想(两卷合订本)11.C++编程规范-101条规则准则与最佳实践12.C++编程调试秘笈13.C++设计新思维-泛型编程与设计之应用14.C++语言的设计和演化15.Effective C++ 中文版第三版高清PDF16.Effective STL中文版17.Modern C++ Design More18.Exceptional C++中文版19.STL源码20.STL源码剖析高清版(剖析+源码)21.提高C++性能的编程技术22.泛型编程与STL中文版23.深入理解C++1124.跟我一起写makefile------Go语言------1.Go并发编程实战2.Go语言圣经3.Go语言学习笔记4.Go语言实战5.Go语言标准库参考6.Go语言程序设计7.Go语言编程8.学习Go 语言(Golang)------Java------1.Head First Java 中文高清版2.Head First Servlet and JSP(高清中文版)3.java从入门到精通(第4版)4.JAVA并发编程实践5.Java性能优化权威指南6.Java核心技术卷1基础知识原书第10版7.Java核心技术卷2高级特性原书第10版8.大话java性能优化9.深入分析JavaWeb技术内幕10.深入剖析Tomcat 深入理解Java虚拟机:JVM高级特性与最佳实践(最新第二版)11.阿里巴巴Java开发手册--1------Java大数据------1.Apache Kafka实战2.Apache Spark源码剖析3.Apache+Kylin权威指南4.Elasticsearch集成Hadoop最佳实践5.Flink基础教程6.Flume构建高可用、可扩展的海量日志采集系统7.Hadoop应用架构8.HBase实战中文版9.Hive编程指南10.Kafka源码解析与实战11.Mahout算法解析与案例实战12.MapReduce设计模式[(美)迈纳,(美)舒克著]13.Scala编程中文版(33章全)14.Spark内核设计的艺术架构设计与实现(耿嘉安)15.Spark大数据分析核心概念技术及实践OCR16.Spark大数据处理:技术、应用与性能优化(全)17.Spark快速大数据分析18.Spark快速数据处理19.Spark机器学习20.Storm技术内幕与大数据实践21.图解Spark -核心技术与案例实战22.大数据Spark企业级实战版23.大数据架构师指南24.实战Elasticsearch、Logstash、Kibana:分布式大数据搜索与日志挖掘及可视25.机器学习与数据挖掘方法和应用(经典)26.深入理解Spark:核心思想与源码分析------Linux------1.Linux 内核设计与实现2.Linux内核设计与实现第3版_优先看3.Linux多线程服务端编程书签高清非扫描-陈硕4.linux常用命令大全Linux环境编程:从应用到内核5.Linux高性能服务器编程6.Linux高级程序设计中文第三版杨宗德--人电出版社7.UNIX 环境高级编程第3版8.Unix-Linux编程实践教程9.UNIX编程艺术-中文版【The+Art+of+UNIX+Programming】10.UNIX网络编程卷1 API UNIX网络编程卷2:进程间通信11.深入Linux内核架构(图灵程序设计丛书·LinuxUNIX系列)12.深入理解Linux内核13.鸟哥的Linux私房菜基础篇和服务器篇------python------1.Head_First_Python(中文版)2.Python Cookbook(第3版)中文版3.Python3程序开发指南Python参考手册(第4版)4.Python学习手册(第4版)5.Python开发技术详解6.Python核心编程第3版中文版7.Python正则表达式-深入浅出8.Python灰帽子——黑客与逆向工程师的Python编程之道9.Python编程入门经典10.Python编程初学者指南11.Python编程快速上手让繁琐工作自动化12.python编程金典13.Python高级编程14.编程小白的第一本python入门书------python数据分析和数据挖掘------1.Python数据分析基础2.Python数据挖掘入门与实践3.Python金融大数据分析4.Tableau:数据可视化之极速BI5.利用python进行数据分析6.数据可视化之美7.数据挖掘原理与算法8.数据挖掘导论-完整版9.用Python写网络爬虫10.精通Scrapy网络爬虫-刘硕------操作系统------pilers_ Principles, Techniques, and Toolsputer Systems_ A Programmer's Perspective3.分布式系统概念与设计原书第5版4.操作系统之哲学原理第2版5.操作系统概念-英文版6.操作系统概念7.操作系统概述-公众号资源8.操作系统真象还原9.操作系统精髓与设计原理第8版10.操作系统精髓与设计原理第9版11.操作系统设计与实现12.深入理解计算机系统第3版13.现代操作系统-英文版14.现代操作系统(第三版)中文版15.编译原理16.自己动手写操作系统17.计算机系统要素-从零开始构建现代计算机-----数据结构与算法------1.C++数据结构与算法(第4版)带书签目录完整版2.JavaScrit数据结构与算法(第2版)3.Java数据结构和算法4.严蔚敏:数据结构题集(C语言版)5.分布式算法导论6.剑指offer7.啊哈!算法哈磊8.大话数据结构9.妙趣横生的算法(C语言实现第2版)10.挑战程序设计竞赛(第2版)11.数据结构C语言严蔚敏pdf12.数据结构与算法Python语言描述_裘宗燕13.数据结构与算法分析C++描述14.数据结构与算法分析——Java语言描述15.数据结构与算法分析:C语言描述原书第2版高清版16.漫画算法:小灰的算法之旅17.程序员代码面试指南IT名企算法与数据结构题目最优解(左程云著)18.程序员的算法趣题19.算法(第4版)20.算法之道21.算法分析与设计22.算法图解23.算法竞赛入门经典训练指南24.算法谜题25.编程之美-完整版26.编程珠玑第二版人民邮电出版社27.背包九讲28.谷歌大佬总结的Leetcode刷题笔记,支持Java、C++、Go三种语言29.趣学算法------校招和面经------1.C++牛客大佬总结面试经验2.c++面经总结3.Java程序员面试宝典4.Java突击面试总结5.Java面试突击-V36.招聘笔记7.机器学习8.算法工程师带你去面试9.机器学习常见面试题10.牛客SQL练习题1-61答案与解析11.牛客网IT名企2016笔试真题+答案12.牛客网Java工程师校招面试题库13.程序员面试宝典14.阿里Java面试问题大全------计算机网络------puter Networking_ A Top-down Approachputer Networks, A Systems Approach3.HTTP权威指南4.Http核心总结5.TCP-IP详解卷1:协议原书第2版6.TCP-IP详解卷三7.TCP-IP详解卷二:实现8.tcp源码分析9.Wireshark 数据包分析实战(第二版)10.Wireshark网络分析就这么简单11.Wireshark网络分析的艺术12.图解HTTP13.图解TCPIP(第5版)14.网络是怎样连接的(图灵程序设计丛书)15.计算机网络第七版16.计算机网络-自顶向下方法-第6版17.计算机网络:系统方法18.计算机网络。
黑马程序员 python 笔记
文章标题:解锁Python编程技能:成为黑马程序员的必备笔记第一部分:引言1.1 什么是Python编程Python编程语言是一种高级、通用、解释型编程语言。
它在机器学习、人工智能、数据分析等领域有着广泛的应用,被誉为是学习编程的最佳入门语言之一。
对于想要成为优秀程序员或者黑马程序员的人来说,掌握Python编程技能至关重要。
第二部分:入门篇2.1 Python基础语法在学习Python编程之前,了解Python的基础语法是必不可少的。
Python的变量、数据类型、条件语句、循环等。
只有掌握了这些基础知识,才能够更好地理解和应用Python编程。
2.2 Python函数和模块函数和模块是Python编程中非常重要的概念。
函数可以让代码更加模块化和可复用,而模块则可以让代码更加清晰和可维护。
通过学习函数和模块的知识,可以使我们的Python代码更加高效和灵活。
2.3 Python面向对象编程面向对象编程是一种重要的编程范式,而Python是一种面向对象的编程语言。
掌握面向对象编程的知识,可以让我们更好地组织和管理代码,提高代码复用性和可维护性。
第三部分:进阶篇3.1 Python文件操作在实际开发中,文件操作是无法回避的部分。
学习如何使用Python 进行文件读写操作,可以让我们更好地处理数据和文件,实现更丰富的应用场景。
3.2 Python异常处理异常是编程中一种常见的情况,学习如何处理异常可以让我们的代码更加健壮和可靠。
Python提供了丰富的异常处理机制,学习这些知识可以让我们更好地处理各种异常情况。
3.3 Python常用库和框架Python拥有丰富的第三方库和框架,如NumPy、Pandas、Django等。
学习这些常用库和框架,可以让我们更好地开发各种应用,提高开发效率和质量。
第四部分:个人观点和总结4.1 个人观点作为一名编程人员,我深刻理解Python编程技能在今天的重要性。
Python的简洁易读的语法、丰富强大的库和框架、广泛的应用场景,使其成为成为黑马程序员不可或缺的技能之一。
Python笔记
Python笔记1.在Python中数的类型有三种——整数、浮点数和复数。
其中整数类型⼜分为int (有符号整数)、long (长整数)和bool (布尔值)。
复数的例⼦:(-5+4j)。
在Python中不⽤区分’long int’类型,长整数范围仅受限于⽤户计算机的虚拟内存总数。
2.没有仅仅使⽤ASCII的字符串,原因是Unicode是ASCII的超集。
如果要严格使⽤ASCII编码的字节流,可⽤str.encode("ascii")。
默认所有的字符串的编码是Unicode。
(P14 in “A Byte of Python”)3.可以⽤单引号指定字符串,如:4.在双引号中的字符串与单引号中的字符串的使⽤完全相同,如:5.利⽤三引号("""or’’’),你可以指⽰⼀个多⾏的字符串。
你可以在三引号中⾃由的使⽤单引号和双引号,如:将会输出:6.⼀个字符串⼀旦创建,就不能再改变它。
(P16)7.如果把两个字符串按字⾯意义相邻放着,他们会被Python⾃动级连,如:等价于8.format⽅法:输出为:也可⽤字符串连接:来实现9.物理⾏是你在编写程序时所看见的。
逻辑⾏是Python看见的单个语句。
Python假定每个物理⾏对应⼀个逻辑⾏。
默认地,Python希望每⾏都只使⽤⼀个语句,这样使得代码更加易读。
如果你想要在⼀个物理⾏中使⽤多于⼀个逻辑⾏,那么你需要使⽤分号(;)来特别地标明这种⽤法。
分号表⽰⼀个逻辑⾏或语句的结束10.在Python中,每⾏开头的空⽩很重要,其⽤来决定逻辑⾏缩进的层次,从⽽来决定语句分组。
同⼀层次的语句必须有相同的缩进,每⼀组这样的语句称为⼀个块。
如:11.表达式可以被分解成操作符和操作数。
12.Python 也⽀持增量赋值。
如:等价于13.相同优先级的运算符按照从左向右的顺序计算(左结合性);相同优先级的赋值运算符有从右向左的结合顺序(右结合性)。
全网最详细的Python学习笔记,值得收藏
全⽹最详细的Python学习笔记,值得收藏我总结了python已下点:⾯向对象类和对象的创建属相相关⽅法相关元类内置的特殊属性内置的特殊⽅法PS注意:不管你是为了Python就业还是兴趣爱好,记住:项⽬开发经验永远是核⼼,如果你缺新项⽬练习或者没有python精讲教程,可以去⼩编的Python交流.裙:七⾐⾐九七七巴⽽五(数字的谐⾳)转换下可以找到了,⾥⾯很多新教程项⽬,还可以跟⽼司机交流讨教!类和对象的创建类# 经典类没有继承 object的类# 新式类继承了 object的类class Money: # 2.x中默认是经典类,3.x中是新式类passclass Money(object): # 兼容的⼀种写法pass# Money既是类的__name__属性名,⼜是⼀个引⽤该类的变量print(Money.__name__) # Moneyxxx = Moneyprint(xxx.__name__) # Money对象one = Money()print(one) # <__main__.Money object at 0x000001555E9534A8>print(one.__class__) # <class '__main__.Money'>属性相关对象属性class Person:passp = Person()# 给 p对象增加属性, 所有的属性好像是以字典的形式组织的p.age = 18print(p.age) # 18print(p.__dict__) # {'age': 18}print(p.sex) # AttributeError: 'Person' object has no attribute 'sex'# 删除p对象的属性del p.ageprint(p.age) # AttributeError: 'Person' object has no attribute 'age'类属性num = 666count = 1type = "rmb"print(Money.num) # 666# 对象查找属性,先到对象⾃⾝去找,若未找到,根据 __class__找到对应的类,然后去类中查找one = Money()print(one.count) # 1# 不能通过对象去修改/删除对应类的属性one.num = 555print(Money.num) # 666print(one.num) # 555# 类属性会被各个对象共享two = Money()print(one.num, two.num) # 666 666Money.num = 555print(one.num, two.num) # 555 555限制对象的属性添加# 类中的 __slots__属性定义了对象可以添加的所有属性class Person:__slots__ = ["age"] # 只允许添加⼀个 age属性p1 = Person()p1.age = 1p1.num = 2 # AttributeError: 'Person' object has no attribute 'num'私有化属性Python没有真正的私有化⽀持,只能⽤给变量添加下划线来实现伪私有;通过名字重整机制属性的访问范围:类的内部-->⼦类内部-->模块内的其他位置-->其他模块公有属性 x[x] 类的内部[x] ⼦类内部[x] 模块内的其他位置[x] ⼦类内部受保护属性 _x[x] 类的内部[x] ⼦类内部[x] 模块内的其他位置(但不推荐)[x] ⼦类内部(from ... import xxx 不可以访问,要指明all变量)私有属性 __x[x] 类的内部[ ] ⼦类内部[ ] 模块内的其他位置[ ] ⼦类内部(同_x)保护数据案例class Person:def __init__(self):self.__age = 18def set_age(self, age): # 错误数据的过滤if isinstance(age, int) and 0 < age < 150:self.__age = ageelse:print("Wrong age value")return self.__agep = Person()print(p.get_age()) # 18p.set_age(22)print(p.get_age()) # 22只读属性# 1. 属性私有化 + 属性化 get()⽅法class Person(object):def __init__(self):self.__age = 18# 可以以使⽤属性的⽅式来使⽤⽅法@propertydef age(self):return self.__agep = Person()print(p.age) # 18p.age = 666 # Attribute Error: can't set attribute# 2. 通过底层的⼀些函数class Person:# 通过属性 = 值的⽅式来给⼀个对象增加属性时,底层都会调⽤这个⽅法,构成键值对,存储在 __dict__字典中 # 可以考虑重写底层的这个函数,达到只读属性的⽬的def __setattr__(self, key, value):if key == "age" and key in __dict__:print("read only attribute")else:self.__dict__[key] = value⽅法相关⽅法的划分实例⽅法类⽅法静态⽅法class Person:def instance_fun(self): # self: 调⽤对象的本⾝,调⽤时不⽤写,解释器会传参print("instance method", self)@classmethoddef class_fun(cls): # cls: 类本⾝print("class method", cls)@staticmethoddef static_fun():print("static method")所有的⽅法都存储在类中,实例中不存储⽅法类⽅法和静态⽅法⽆法访问实例属性⽅法的私有化和变量的私有化思想差不多class Person:__age = 18def __run(self): # 只能在该类中被调⽤print("running...")创建类对象的类(类也是⼀个对象)a, s = 8, "123"print(a.__class__, s.__class__) # <class 'int'> <class 'str'>print(int.__class__, str.__class__) # <class 'type'> <class 'type'>type是元类。
最全Python基础的知识点复习
最全Python基础的知识点复习一、内容概要基础语法:涵盖Python的基本语法元素,包括变量、数据类型、运算符、控制结构(如条件语句和循环语句)等。
数据类型与操作:详细介绍Python中的常用数据类型(如列表、元组、字典、集合等),以及这些数据类型的基本操作和特性。
函数与模块:讲解如何定义和使用函数,以及模块的概念和用法,包括自定义模块和Python标准库的使用。
面向对象编程:介绍Python中的类与对象,包括属性、方法、继承等面向对象编程的基本概念。
错误与异常处理:阐述Python中的错误和异常类型,以及如何使用tryexcept语句进行异常处理。
文件操作与IO:讲解Python中的文件操作,包括文件的打开、读取、写入和关闭等。
常用库和框架:介绍Python中常用的库和框架,如NumPy、Pandas、Matplotlib等,以及它们在数据处理、科学计算和可视化方面的应用。
通过本文的复习,读者可以全面了解Python编程的基础知识点,为进阶学习和实际应用打下坚实的基础。
二、基础语法变量和命名规则:Python中的变量名可以包含字母、数字和下划线,但不能以数字开头。
Python中的变量名是区分大小写的,因此要注意命名规范。
还需要了解Python中的保留字(如if、else、while等),避免使用这些保留字作为变量名。
数据类型:Python中的数据类型主要包括整数、浮点数、字符串等,并且拥有一种灵活的类型转换机制。
熟练掌握这些基本数据类型的用法以及它们之间的转换方法是基础语法的关键之一。
运算符和表达式:Python中的运算符包括算术运算符(如加、减、乘、除等)、比较运算符(如大于、小于等于等)和逻辑运算符(如与、或、非等)。
通过熟练掌握这些运算符的用法,可以构建各种复杂的表达式,实现数据的计算和判断。
条件语句和分支结构:在编程过程中,需要根据不同的条件执行不同的操作。
Python中的条件语句包括if语句和ifelse语句,可以实现根据条件进行分支的功能。
小白学Python笔记系列7.1.2 自顶向下的设计
总问题
问题1
分解
分解
问题2
解决
解决
分解
问题n
解决
总问题解决
小白学Python笔记
顶层设计(第一阶段)举例
步骤1:打印程序的介绍性信息 printIntro()
步骤2:获得程序运行所需的参数:ProA、ProB、n probA,probB,n = getInputs()
小白学Python笔记
顶层设计(第一阶段)举例
步骤3:模拟n次比赛 winsA, winsB = simNGames(n,probA,probB)
步骤4:输出球员A和B获胜比赛的次数和概率 printSummary(winsA, sinsB)
小白学Python笔记
顶层设计(第一阶段)举例
def main(): printIntro() probA,probB,n = getInputs() winsA, winsB = simNGames(n,probA,probB) PrintSummary(winsA, sinsB)
小白学Python笔记
第三阶段
体育竞技分析程序结构图:第三阶段
小白学Python笔记
第三阶段
simOneGame()函数; def simOneGame(probA,probB): scoreA = 0 scoreB = 0 serving = 'A' while <condition>: <todo>
小白学Python笔记
第二阶段
getInputs()函数; def getInputs(): a = eval(input(‘What is the prob.player A wins?’)) b = eval(input(‘What is the prob.player B wins?’)) n = eval(input(‘How many games to simulate?’)) return a,b,n
python一级知识点
python一级知识点以下为你提供Python一级的知识点:- IDLE打开方式:- 菜单栏打开方式:菜单栏找到python文件夹,点击打开。
- 创建桌面快捷方式,双击打开。
- 右键点击python文件,选择Edit with IDLE/Edit with IDLE 3.xx。
- 两种编程模式:1. 命令行交互式编程:输入一行,执行一行。
打开IDEL就可以在输入位置编写和运行,运行方式是按回车键。
优点是运行方便,打开即用;缺点是不适合开发大型复杂程序,运行过的代码行无法修改,需要重新输入并按回车执行。
2. 程序文件编程:写很多行代码一起执行。
在IDLE中执行file/new file,编写保存代码,运行方式是run/run module。
优点是适合开发大型复杂程序,程序可反复修改运行;缺点是需要创建和组织若干数量的代码文件,相对耗时。
- IDLE常用操作:- file/new file:新建文件。
- file/open:打开文件。
- file/save:保存文件。
- file/save as:另存文件。
- file/recent files:近期文件列表。
- run/run module:运行程序。
- options/configure IDLE:设置编辑器字体等。
- Python常用扩展名:- .py:由python.exe运行,运行时会弹出控制台窗口。
在windows系统下,双击.py 文件会自动由python.exe运行当前程序,会弹出命令行窗口,常用的输入和输出在命令行窗口内完成。
- .pyw:由pythonw.exe运行,运行时不会弹出命令行窗口,通常用来开发gui 程序。
在window是系统下,双击.pyw文件会自动由pythonw.exe运行当前程序,不会弹出命令行窗口。
以上是Python一级的部分知识点,你可以根据自己的需求选择学习。
如需了解更多内容,你可以继续向我提问。
python必学知识点总结
python必学知识点总结一、Python 基础1. 变量和数据类型Python 中的变量可以用来存储各种类型的数据,包括整数、浮点数、字符串、列表、元组、字典等。
掌握不同数据类型的定义和使用方式是非常重要的。
2. 运算符和表达式Python 支持各种运算符和表达式,包括算术运算、比较运算、逻辑运算等。
熟练掌握运算符的优先级和使用方法是非常重要的。
3. 控制流Python 中的控制流包括条件语句、循环语句和异常处理。
掌握这些控制流的使用方法可以编写灵活的程序。
4. 函数和模块Python 中的函数和模块可以用来组织和重用代码。
了解如何定义函数、调用函数和导入模块是非常必要的。
5. 文件操作Python 提供了丰富的文件操作函数和方法,可以用来读写文件、管理文件路径等。
掌握文件操作的技巧可以实现更多功能。
6. 异常处理Python 中的异常处理机制可以用来处理程序运行时出现的错误和异常。
了解如何捕获异常、处理错误是非常重要的。
二、Python 高级特性1. 列表推导式列表推导式是一种简洁的方式来创建列表,可以在一行代码里实现复杂的逻辑。
2. 生成器和迭代器生成器和迭代器可以用来实现惰性计算和数据流处理,提高程序的效率和性能。
3. 装饰器装饰器是一种功能强大的特性,可以用来动态地修改函数或方法的行为。
4. 上下文管理器上下文管理器可以用来管理资源的获取和释放,例如文件操作、数据库连接等。
5. 多线程和多进程Python 提供了多线程和多进程的支持,可以用来实现并发和并行处理。
6. 函数式编程Python 支持函数式编程范式,可以通过高阶函数、匿名函数等来实现函数的组合和变换。
三、Python 标准库1. os 模块os 模块提供了丰富的函数和方法,用来处理操作系统相关的功能,例如文件路径、环境变量等。
2. sys 模块sys 模块包含了与 Python 解释器相关的功能,例如命令行参数、标准输入输出等。
千锋教育python课堂笔记
1. Python基础知识- Python是一种面向对象的编程语言,由Guido van Rossum在1989年发明。
它具有简单易学、功能强大、可扩展性强等特点,适合初学者学习。
2. 变量和数据类型- 在Python中,变量是用来存储数据的名称,可以是数字、字符串、列表等不同类型的数据。
常见的数据类型包括整型、浮点型、字符串等。
3. 控制流语句- Python提供了丰富的控制流语句,如if语句、for循环和while循环,用来控制程序的执行流程。
掌握这些语句可以让程序更灵活、更高效。
4. 函数和模块- 函数是一段可重复使用的代码块,通过定义和调用函数可以提高代码的重用性和可维护性。
模块是一组相关的函数和变量的集合,可以使用import关键字引入模块。
5. 文件操作- Python支持对文件的读写操作,通过open函数可以打开文件并进行读写操作。
掌握文件操作可以让程序与外部文件进行数据交互,提高程序的实用性。
6. 异常处理- 在程序运行过程中可能会出现各种错误,Python提供了try-except 语句用来处理异常。
掌握异常处理可以让程序更健壮、更可靠。
7. 面向对象编程- Python是一种面向对象的编程语言,支持类、对象、继承、多态等面向对象编程的特性。
掌握面向对象编程可以让程序更结构化、更易扩展。
8. 实战项目- 通过实战项目可以巩固所学知识,提高编程能力。
可以选择一些简单的项目,如编写一个简单的小游戏、爬取全球信息站数据等。
9. 学习资源- 除了课堂教学,还可以通过阅读书籍、参加线上课程、搜索网络资源等方式来提高Python编程技能。
建议可以关注一些Python技术交流社区,如GitHub、知识等。
10. 总结- Python是一种简单易学、功能丰富的编程语言,适合初学者学习。
通过系统的课堂学习和实战项目练习,可以提高编程能力,为将来的学习和工作打下良好的基础。
11. 应用领域Python不仅仅是一种流行的教学语言,同时也是各种领域中的实际应用编程语言。
小甲鱼视频笔记整理(1-5)
零基础入门学习Python(小甲鱼)笔记整理(class 1 - class 5)Class11、IDLE是一个python shell,shell就是一个通过键入文本与程序交互的路径。
2、Alt+n进入上一条语句;Alt+p进入下一条语句。
3、\n为换行符(lf),\r是回车符(CR)。
4、Python3中的输出语句格式为:print(’hello world!’)。
如果输入print ’hello world!’(这是Python2的输出格式)或者printf(‘hello world!’)(这是c语言的输出格式)。
【Notice】:如果输入print(‘hello world’); 可以正常输出,但是Python中的语句不需要使用分号结尾,除非在同一行输入多个语句。
5、Python的其他输入情况【Notice】:hello world是一个字符串,8是一个整型,不能直接用加号连接。
6、什么是脚本语言?7、直接输入5+8与输入print(5+8)有何不同?Class21、tab键的作用:1)缩进2)键入几个字母,按下tab,列出候选字。
2、BIF是built-in functions的缩写。
3、通过命令dir(___builtins__)可以查看各个BIF的名称;通过命令help(BIF)可以查看各个BIF的作用,例如help(print)可以查看print的相关信息。
Class31、【Notice】:third作为first和second的和,并没有随着first的变化而变化。
2、转义字符及原始字符串的使用方法。
打印单引号的办法——只用转移字符,即输入print(“\’”)。
【Notice】:反斜杠也可以对自身进行转义。
原始字符串的使用方法就是在字符串前边追加一个英文字母r即可。
【Notice】:下一例子中的str2=r’c:\program files\fishc\good’’\\’等价于str2=r’c:\program files\fishc\good’+’\\’。
大一python各章知识点
大一python各章知识点1 Introduction to PythonPython is a versatile and popular programming language that is frequently used in various fields, including web development, data analysis, and artificial intelligence. As a beginner in Python, it is essential to familiarize yourself with the key knowledge points covered in each chapter of a typical introductory Python course. This article will provide an overview of the main topics covered in a first-year Python course without explicitly stating chapter titles or repeating the title of the article.2 Variables and Data TypesOne of the fundamental concepts in Python programming is variables. Variables allow us to store and manipulate data. In Python, we can assign a value to a variable using the "=" operator. Python supports several data types, such as integers, floats, strings, and Booleans. Understanding how to declare and use variables is crucial for any Python programmer.3 Control FlowControl flow refers to the order in which the statements in a program are executed. Python provides various control flow structures,including if statements, loops, and function calls. If statements allow us to make decisions based on certain conditions, while loops permit executing a block of code repeatedly. It is essential to grasp how to use control flow structures effectively to write efficient and logical Python programs.4 Functions and ModulesFunctions are reusable blocks of code that perform a specific task. Python allows programmers to define their functions, which can take arguments and return values. By dividing code into functions, we can enhance the reusability and readability of our programs. Additionally, Python provides a wide range of modules that contain predefined functions and classes, offering additional functionality. Learning how to create and use functions, as well as import and utilize modules, is crucial for Python programming.5 Working with Lists and StringsLists and strings are essential data structures in Python. Lists allow us to store multiple values in a single variable, making them highly versatile. Python provides various methods to manipulate and access list elements. On the other hand, strings are sequences of characters and are immutable in Python. Understanding how to work with lists and strings is vital for manipulating and processing data effectively.6 File HandlingFile handling involves reading from and writing to files on the computer's storage system. Python provides built-in functions and modules for file handling operations. Learning how to open, read, write, and close files is vital for dealing with real-world data and performing file-based operations.7 Object-Oriented Programming (OOP)Object-Oriented Programming is a programming paradigm that focuses on creating objects that contain both data and methods. Python is an object-oriented programming language, and mastering OOP concepts is essential for building complex software systems. Topics such as classes, objects, inheritance, and polymorphism are critical for understanding and implementing OOP principles in Python.8 Error HandlingError handling is an important aspect of programming. Python provides mechanisms for catching and handling errors or exceptions that may occur during program execution. Understanding how to handle exceptions properly can help prevent program crashes and improve the reliability and robustness of Python programs.9 Working with DatabasesPython offers several modules and frameworks for interacting with databases. Whether you are retrieving data from a database or updating records, understanding how to connect, query, and manipulate databases using Python is essential for many real-world applications.10 ConclusionIn conclusion, this article has provided an overview of the key knowledge points covered in a typical first-year Python course. From basic concepts such as variables and data types to more advanced topics like object-oriented programming and database interactions, each chapter of a Python course builds upon the previous one to provide a comprehensive foundation for Python programming. By mastering these essential knowledge points, aspiring Python developers can take their skills to the next level and embark on exciting projects and opportunities.。
Python 基础学习笔记【范本模板】
Python 基础学习笔记基于《Python语言程序设计基础(第2版)》第一部分初识Python语言第1章程序设计基本方法1。
1 计算机的概念•计算机是根据指令操作数据的设备,具备功能性和可编程性两个基本特性。
•计算机技术发展阶段:1. 第一阶段:1946-1981年,“计算机系统结构阶段”.2. 第二阶段:1982—2007年,“计算机网络和视窗阶段”。
3. 第三阶段:2008年至今,“复杂信息系统阶段”。
4. 第四阶段:月20年后某个时期开始,“人工智能阶段".1.2程序设计语言1.2。
1程序设计语言概述•机器语言:直接使用二进制代码表达指令,可被计算机硬件直接识别和执行。
不同计算机结构的机器指令不同.•汇编语言:使用助记符对应机器语言中的指令,可直接操作计算机硬件。
不同计算机结构的汇编指令不同.机器语言和汇编语言都直接操作计算机硬件并基于此设计,统称“低级语言”。
•高级语言:用更接近自然语言的方式描述计算问题。
代码只与编程语言有关,与计算机结构无关.1。
2.2编译和解释高级语言按执行方式可分为采用编译执行的静态语言和采用解释执行的脚本语言。
•编译是将源代码转换成目标代码的过程.•解释是将源代码逐条转换成目标代码同时逐条运行目标代码的过程.1.2.3计算机编程•我学习Python的原因:1. 通过编程实现自动化,提高效率。
2. 通过编程了解一个新的广阔世界.•学习一门编程语言(重点在于练习)1. 掌握该语言的语法2. 结合问题设计程序结构3. 掌握解决问题的能力1。
3Python语言概述1.3。
1 Python语言的发展Python语言是一个语法简洁、跨平台、可扩展的开源通用脚本语言。
•Python语言诞生于1990年,创世人为Guido.•2000年10月,Python 2.0正式发布,2010年,Python 2.x系列发布最后一版(2.7)。
•2008年12月,Python 3。
pathon的一些基本知识
1.在python中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。
python中的标识符是区分大小写的。
以下划线开头的标识符是有特殊意义的。
以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用"from xxx import*"而导入;以双下划线开头的(__foo)代表类的私有成员;以双下划线开头和结尾的(__foo__)代表pytho n 里特殊方法专用的标识,如__init__()代表类的构造函数。
2.Python保留字符下面的列表显示了在Pyth on中的保留字。
这些保留字不能用作常数或变数,或任何其他标识符名称。
所有Pytho n的关键字只包含小写字母。
3.行和缩进学习Pytho n与其他语言最大的区别就是,Python的代码块不使用大括号({})来控制类,函数以及其他逻辑判断。
python最具特色的就是用缩进来写模块。
缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。
如下所示:4.多行语句Python语句中一般以新行作为为语句的结束符。
但是我们可以使用斜杠(\)将一行的语句分为多行显示,如下所示:语句中包含[], {} 或() 括号就不需要使用多行连接符。
如下实例:5. Python引号Python接收单引号(' ),双引号(" ),三引号(''' """) 来表示字符串,引号的开始与结束必须的相同类型的。
其中三引号可以由多行组成,编写多行文本的快捷语法,常用语文档字符串,在文件的特定地点,被当做注释6. Python注释python中单行注释采用# 开头。
python没有块注释,所以现在推荐的多行注释也是采用的#比如:7.等待用户输入下面的程序在按回车键后就会等待用户输入:以上代码中,"\n\n"在结果输出前会输出两个新的空行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
英语单词Redundance: 冗余,多余Intentional:故意的,企图的,策划的stuff[stʌf]n.材料, 原料; 物品, 东西; 木料; 纺织品v.塞满, 填充, 填满; 饱食, 吃得过多indented[in·dent·ed || ɪn'dentɪd]adj.锯齿状的; 受契约约束的; 缩进排印的blown1[bləʊn]adj.喘气的; 被苍蝇弄赃的; 精疲力竭的; 有蝇卵附着的; 吹制的blown (blow)2[bləʊn]v.吹, 刮; 随风飘动; 吹动; 吹响, 鸣响; 吹; 吹掉; 吹动; 刮走; 使开花; 开blow[bləʊ]n.吹动, 吹气; 吹牛, 自夸; 强风, 暴风#一击, 殴打; 不幸; 打击; 精神上的打击#开花v.吹, 刮; 随风飘动; 吹动; 吹响, 鸣响; 吹; 吹掉; 吹动; 刮走; 使开花; 开full blown完全成熟的; 具有一切特征的; 充分发展的scratch[skrætʃ]v.抓, 搔(痒), 划破, 划掉n.抓痕, 乱写,抓的声音, 起跑线adj.无让步的tricky['triki]adj.棘手的, 狡猾的, 巧妙的shrink[ʃrɪŋk]n.收缩, 畏缩, 萎缩v.收缩, 萎缩, 退缩; 使收缩, 使缩小appropriate[ap·pro·pri·ate || ə'prəʊprɪət]v.拨出; 挪用, 盗用; 占用adj.适当的, 恰当的, 相称的pickle ['pikl]n.腌汁, 泡菜, <英口>淘气鬼, <口>困境v.腌, 泡comprehend[com·pre·hend || ‚kɒmprɪ'hend]v.领会; 包括; 理解duplicate[du·pli·cate || 'djuːplɪkət]n.副本, 复制品, 复本adj.复制的, 二重的v.复制; 影印, 拷贝; 复写; 重复sanitize['sænitaiz]vt. 采取卫生措施使其安全, 消毒, 使无害1.Meet pythonPython is a lot like any other general-purpose programming language, with statements, expressions , operators , functions , modules, methods, and classes .IDEL是Python的编辑环境,TAB键可以给出提示语句Alt-P重复之前的命令,比如上一个命令是print,再向上是1+2命令,则按一次Alt-P会出现print命令,按两次出现1+2命令Alt-N重复下一个命令,其实是循环到第一个命令。
之后在向下。
Create simple Python lists创建一个list在Python中非常容易,比如:Python’s variable identifiers don’t have a type.When you create a list in Python, the interpreter creates an array-like data structure in memory to hold your data, with your data items stacked from the bottom up.Python的list也是以0为下标开始。
虽然python中变量没有类型的,但是List有集合的方法,比如len(movies),也可以使用append()方法向list后面添加数据,可以使用pop()方法把最后添加的数据弹出,使用extend()方法在后面添加集合等,如下:也可以使用remove(元素值)的方式删除元素,使用insert(下标,元素)的方式在特定位置插入元素,如:Add more data to your list向list中添加更多数据,有两种选择:1.选择合适的list方法来添加2.当数据少的时候,重新创建list比如在上面的movies中,要向每部电影后面加上上映时间,结果变为:第一种方式如下:第二种则是:即重新建立一个list因为数据比较少,使用第二种方式比较好。
Work with your list data使用for遍历list,比如:主要:不用忘记“:”当然也可以使用while语句:Python中的字符串可以以双引号“或者是单引号’包围,他们没有区别。
如果想要在字符串中包含双引号,则可以使用\”转义字符方式,或者使用单引号包围。
Store lists within listsList元素中也可以是list,比如:相当于是多维数组,比如:遍历内嵌list的list,如下:Check a list for a listPython内置的方法isinstance(obj, 内置类型),可以用来判断变量是否为内置对象的一种,比如:因此可以变量内嵌list的list时,可以使用if...else语句判断,如下:Python内置了70多个函数,可以使用dir(__builtins__)列出所有函数,如下:可以使用help(内置命令)方法找到该内置函数的帮助。
create a function刚才遍历内嵌list的list时,对于多层嵌套的不能达到最内层。
如果一直使用if...else语句会非常繁琐。
可以使用递归的方式,首先定义一个函数,如下:2.share your code:modules of functions模块化实际就是把函数保存在.py文件中。
Python使用’’’三个单引号’’’包围的方式写注释。
也可以使用#方式添加注释查看电脑上都有哪些model,如下:打开.py文件,然后F5,或者在IDEL上点击运行,会出现如下:实际就是进入了该模块的运行环境,如下:Prepare your distribution为了分享创建的模块,需要准备一个distribution。
步骤如下:1.创建一个目录,比如nester,创建一个nester.py文件3.Build a distribution file. Open a terminal window within your nester folder and type a single command:python3 setup.py sdist,在windows下使用“C:\Python32\python.exe”来代替python3,运行结果如下:4.Install your distribution into your local copy of Python:Staying int the terminal, type this command: sudo python3 setup.py install.结果如下:这样在本地的Python中就导入了这个模块,安装前后目录文件为:在windows下dist目录为.zip,且没有nester.pyc文件。
这时就可以使用了,例子如下:注意:一定不要忘记了nester命名空间,否则会报错。
因为Python默认进入命名空间为:__main__。
也可以使用import nester.print_list,类似于Java的静态导入:import static ng.Math.sin这样可以不使用命名空间,直接用print_list,但是如果在当前命名空间中也有这个函数,就会覆盖掉。
Build-In-FunctionsPython有70多个BIF,因此在写代码的时候,首先考虑能否用到,比如range(int)可以返回一个数字的list,比如:BIF并非是默认的__main__命名空间下的,他们属于__buildins__。
.Unlike compiled languages (such as C, Java, C#, and others), Python doesn’t completely check the validity of your code until it runs.带默认值的参数定义的函数参数在定义时可以设定默认值,在调用该函数的时候可以不设定这个参数,如下:也可以在中间添加一个布尔型参数,指示是否要有缩进,比如:3.File and ExceptionFile ProcessThe basic input mechanism in Python is line based: when read into your program from a text file, data arrives one line at a time.readline()是文件的方法,读取当前iterator的行,seek(0)表示iterator回到第1行。
sketch.txt文本内容如下:类似于对话形式,如果把冒号:变为said:,如下:拆分,赋给两个变量role,line_speak,如果没有冒号或者有多个冒号就会出错,比如:Other Man: Now let's get one thing quite clear: I most definitely told you!出错信息如下:有太多冒号,不能赋给两个变量。
可以设定split的第二个参数,按照几个来拆分,split(‘:’, 1),如下:但是如果遇见空行,或者没有冒号的又会出错,这样有两种方法来解决:1.添加逻辑,比如判断是否有冒号2.处理异常在本场景下,使用find方法来添加逻辑,如下:这样可以正确运行了,但是如果有其他异常呢。
而且这样额外的逻辑,造成了代码碎片。
Handle ExceptionsRather than adding extra code and logic to guard against bad things happening, Python’s exception handling mechanism lets the error occur, spots that it has happened, and then gives you第一种使用os.path.exists(file)方法判断文件是否存在,第二种不判断,有异常直接处理。
Concentrate on what your code needs to do.专注于业务需要,那些额外的逻辑虽然能保证程序正确执行,但并不是必须的,使用异常处理可以很好的避免多余的判断等。