前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >python学习总结

python学习总结

作者头像
Linux云计算网络
发布于 2018-01-10 11:02:20
发布于 2018-01-10 11:02:20
1.1K0
举报
文章被收录于专栏:Linux云计算网络Linux云计算网络

最近经学长介绍学习python,为研究生做研究做准备,python对于科学计算有着很高的效率,对于科研人员当然是有着很强的诱惑,虽然我还没真正用它,但从整个学习的过程来看,的确是高效,学起来也很轻松。

初学只是简单地看了一下python的一些基本语法,一天看一点,一周结束,准备对一周的所学进行一点记录和总结。先来看一些大师对学python的感觉:

python的官方介绍是:python是一种简单易学,功能强大的编程语言,它有着高效率的高层数据结构,简单而有效地实现面向对象的编程。读一下像ESR这样的超级电脑高手谈Python的话,你会感到十分有意思:

● Eric S. Raymond是《The Cathedral and the Bazaar》的作者、“开放源码”一词的提出人。他说Python已经成为了他最喜爱的编程语言。这篇文章也是促使我第一次接触Python的 真正原动力。 ● Bruce Eckel著名的《Thinking in Java》和《Thinking in C++》的作者。他说没有一种语言比得上Python使他的工作效率如此之高。同时他说Python可能是唯一一种旨在帮助程序员把事情弄得更加简单的语言。请阅读完整的采访以获得更详细的内容。 ● Peter Norvig是著名的Lisp语言书籍的作者和Google公司的搜索质量主任(感谢Guido vanRossum告诉我这一点)。他说Python始终是Google的主要部分。事实上你看一下Google招聘的网页就可以验证这一点。在那个网页上,Python知识是对软件工程师的一个必需要求。 ● Bruce Perens是OpenSource.org和UserLinux项目的一位共同创始人。UserLinux旨在创造一个可以被多家发行商支持标准的Linux发行版。Python击败了其它竞争对手如Perl和Ruby成为UserLinux支持的主要编程语言。

下载python,请到http://www.python.org/download/

虽然下面这些知识点很细节,但细节决定成败,这句老掉牙的话我还是很同意,记录下也是对自己这一周的学习做一点总结,同时也可以加深印象,免得做研究的时候用到又要重头学起。

1、如何退出Python提示符 如果你使用的是Linux/BSD shell,那么按Ctrl-d退出提示符。如果是在Windows命令行中,则按Ctrl-z再按Enter,而Ctrl-d则是输入空字符,表示触发EOF错误。

2、使用三引号('''或""") 利用三引号,你可以指示一个多行的字符串。你可以在三引号中自由的使用单引号和双 引号。

3、逻辑行与物理行

物理行是你在编写程序时所 看见 的。逻辑行是Python 看见的单个语句。Python假定每个物理行对应一个 逻辑行 。

4、在Python中没有switch语句。你可以使用if..elif..else语句来完成同样的工作(在某些场合,使用字典会更加快捷。)

5、语句for i in range(1,5),,range返回一个序列的数。这个序列从第一个数开始到第二个数为止。例如,range(1,5)给出序列[1, 2, 3, 4]。默认地,range的步长为1。如果我们为range提供第三个数,那么它将成为步长。例如,range(1,5,2)给出[1,3]。

6、函数通过关键字def定义,局部变量从它们的名称被定义的那点开始。只有在形参表末尾的那些参数可以有默认的参数值,即默认参数。

7、没有返回值的return语句等价于return None。None是Python中表示没有任何东西的特殊类型。例如,如果一个变量的值为None,可以表示它没有值。pass语句在Python中表示一个空的语句块。

8、sys.argv变量是一个字符串的列表,sys.argv包含了命令行参数 的列表,即使用命令行传递给你的程序的参数。sys.path包含输入模块的目录名列表。

9、含有0个或1个项目的元组。一个空的元组由一对空的圆括号组成,如myempty = ()。然而,含有单个元素的元组就不那么简单了。你必须在第一个(唯一一个)项目后跟一个逗号,这样Python才能区分元组和表达式中一个带圆括号的对象。即如果你想要的是一个包含项目2的元组的时候,你应该指明singleton = (2 , )。

10、列表、元组和字符串都是序列,序列的两个主要特点是索引操作符和切片操作符。索引操作符让我们可以从序列中抓取一个特定项目。切片操作符让我们能够获取序列的一个切片,即一部分序列。

E.g:slist = ['a','b','c','d']

索引操作符自然不用多说,但python运行有负值索引,如slist[-1] = 'd',表示从尾数的第一个数。

slist[1:3] = ['b','c']

切片操作符的第一个数(冒号之前)表示切片的开始位置,第二个数表示切片到那里结束,如果不指定第一个数,则从序列首开始,如果不指定最后一个数则到序列尾停止。

slist[2:] = ['c','d']   slist[:2] = ['a','b']  slist[1:-1] = ['b','c'] 

11、os.sep变量的用法——这会根据你的操作系统给出目录分隔符,即在Linux、Unix下它是'/',在Windows下它是'\\',而在Mac OS下它是':'。使用os.sep而非直接使用字符,会使我们的程序具有移植性,可以在上述这些系统下工作。

12、类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候你不为这个参数赋值,Python会提供这个值,这个值就是self,如:假如你有一个类称为MyClass和这个类的一个实例MyObject。当你调用这个对象的方法MyObject.method(arg1, arg2)的时候,这会由Python自动转为MyClass.method(MyObject, arg1,arg2)——这就是self的原理了。

13、__init__方法在类的一个对象被建立时,马上运行。这个方法可以用来对你的对象做一些你希望的初始化,类似于C++的Constructor;对应的有__del__对应于Destructor。

14、Python中所有的类成员(包括数据成员)都是公共的,所有的方法都是有效的 。只有一个例外:如果你使用的数据成员名称以 双下划线前缀 比如__privatevar,Python的名称管理体系会有效地把它作为私有变量。

15、Python提供了一个标准的模块,pickle,使用之可以在一个文件中储存任何Python对象,之后你又可以把它完整无缺地取出来。这被称为 持久地 储存对象。cPickle功能和pickle完全相同,用C语言编写,比pickle快1000倍,储存使用dump函数,如:p.dump(slist,file);取储存使用load函数,如:p.load(file)

16、使用raise语句可以引发异常。

17、通过列表综合,可以从一个已有的列表导出一个新的列表。如:

listone = [2, 3, 4] listtwo = [2*i for i in listone if i > 2] print listtwo

结果为:[6, 8]

暂时学了这么多,以上是一些极易忘记的点,以后再通过学习《深入理解python》进行深入学习。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2013-09-08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Mybatis学习笔记2
Mybatis学习笔记2 本章目录描述: 1、Dao开发方法 1.1需求 1.2SqlSession的使用范围 1.3原始Dao开发方式 1.4 Mapper动态代理方式 2、SqlMapConfig.xml配置文件; 2.1SqlMapConfig.xml中配置的内容 2.2properties(属性) 2.3typeAliases(类型别名) 2.4 mappers(映射器) 1 Dao开发方法 使用Mybatis开发Dao,通常有两个方法,即原始Dao开
Java学习
2018/04/17
6700
day61_Mybatis学习笔记_01
  1、执行sql_table.sql脚本,创建数据库表;   2、执行sql_data.sql初始化测试数据。
黑泽君
2018/11/08
1.4K0
MyBatis从入门到多表关联
Spring JDBC模块主要由4个包组成,分别是core(核心包)、dataSource(数据源包)、object(对象包)、support(支持包)。
ha_lydms
2023/08/09
5290
MyBatis从入门到多表关联
【MyBatis框架点滴】——MyBatis开发DAO的两种方法:原始DAO开发方法和Mapper代理方法
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/details/51533092
DannyHoo
2018/09/13
3530
MyBatis学习总结(一)——ORM概要与MyBatis快速起步
程序员应该将核心关注点放在业务上,而不应该将时间过多的浪费在CRUD中,多数的ORM框架都把增加、修改与删除做得非常不错了,然后数据库中查询无疑是使用频次最高、复杂度大、与性能密切相关的操作,我们希望得到一种使用方便,查询灵活的ORM框架,MyBatis可以满足这些要求,MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架,它也是SSM框架集成中的重要组成部分。
张果
2018/10/09
8650
MyBatis学习总结(一)——ORM概要与MyBatis快速起步
Mybatis 入门 (二)
resultMap:当查询字段名与Bean对象属性名不一致时,需要配置resultMap与Bean属性的对应关系,才能映射
晚上没宵夜
2020/03/11
3600
myBatis笔记
SqlMapConfig.xml,此文件作为mybatis的全局配置文件,配置了mybatis的运行环境等信息。
HUC思梦
2020/09/03
1.5K0
myBatis笔记
Mybatis_day01
Mybatis_day01 前言 Jdbc演变到mybatis jdbc jdbc编程 publicstaticvoid main(String[] args) { Connection connection = null; PreparedStatement preparedStatement = null; ResultSet resultSet = null; try { //加载数据库驱动 Class.forName("com.mysql.jdbc.Driver"); //通过驱动管理类获取数据
Java帮帮
2018/03/19
1.1K0
Mybatis_day01
MyBatis基础入门
在软件开发过程中,我们经常要把程序内存中的数据存放到磁盘(或数据库),或者把磁盘(或数据库)的数据加载到内存。这种把程序数据在“瞬时状态”和“持久状态”间转换的过程我们称之为“持久化”。
用户10175992
2022/11/15
4180
MyBatis基础入门
lagou 爪哇 1-1 mybatis 笔记
Mybatis框架是一个半自动的ORM持久层框架,也可以在Java中实现类似 insert(User)的操作最终操作数据库,但是需要我们自己写Sql语句。Mybatis是目前比较流行的Dao层框架。
acc8226
2022/05/17
8020
Mybatis【配置文件】
映射文件 配置文件和映射文件还有挺多的属性我还没有讲的,现在就把它们一一补全 在mapper.xml文件中配置很多的sql语句,执行每个sql语句时,封装为MappedStatement对象,mapper.xml以statement为单位管理sql语句 Statement的实际位置就等于namespace+StatementId 占位符 在Mybatis中,有两种占位符 #{}解析传递进来的参数数据 ${}对传递进来的参数原样拼接在SQL中 主键生成策略 如果我们在Hibernate中,当我们插入数据的时候
Java3y
2018/03/15
1.2K0
Mybatis【配置文件】
MyBatis中的复杂映射
上一章中实现的MyBatis对象映射较为简单,对象中的属性和数据库中的表字段是一一对应的(无论数量和名称都完全一样),如果对象中的属性名和表中的字段名不一致怎么办?又或者Java对象中存在复杂类型属性(即类似Hibernate中多对一、一对多关系对象时)怎么完成数据库表和对象的映射?本章来解决这样的问题。
用户10175992
2022/11/15
2.2K0
MyBatis中的复杂映射
Mybatis 传统 DAO 层开发[了解]
使用 Mybatis 开发 Dao,通常有两个方法,即原始 Dao 开发方式和 Mapper 接口代理开发方式。而现在主流的开发方式是接口代理开发方式,这种方式总体上更加简便。我们的课程讲解也主要以接口代理开发方式为主。在第二章节已经给大家介绍了基于代理方式的 dao 开发,现在给大家介绍一下基于传统编写 Dao 实现类的开发方式。
一点博客
2019/07/24
3720
SpringBoot整合Mybatis超详细流程
MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。
全栈程序员站长
2022/11/17
1K0
SpringBoot整合Mybatis超详细流程
SpringBoot学习笔记(四)——Spring Boot集成MyBatis起步
程序员应该将核心关注点放在业务上,而不应该将时间过多的浪费在CRUD中,多数的ORM框架都把增加、修改与删除做得非常不错了,然后数据库中查询无疑是使用频次最高、复杂度大、与性能密切相关的操作,我们希望得到一种使用方便,查询灵活的ORM框架,MyBatis可以满足这些要求,MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架,它也是SSM框架集成中的重要组成部分。
张果
2022/05/09
5580
SpringBoot学习笔记(四)——Spring Boot集成MyBatis起步
SpringBoot整合Mybatis
在 src/main/resources 下创建 mybatis 文件夹,并在 mybatis 文件夹中创建 "mybatis-config.xml" 配置文件,内容如下:
崔笑颜
2020/06/08
1K0
Mybatis学习错误之:重复加载mapper.xml
学习mybatis的时候,突然遇到测试出错。测试mapper代理失败,现在钻研少了,不喜欢看未知的错误了,立即改正。错误打印说mapper.xml已经注册,仔细查看SQLMapConfig.xml发现确实。修改后正常。 原因是直接复制教学代码,在SqlMapConfig.xml中,配置mappers,加载映射文件,已经配置了加载包文件,然后我自己又添加了单独的mapper。所以出错了,将包注释掉就ok。 测试用例: 1 @Before 2 public void setUp() throws E
Ryan-Miao
2018/03/13
2.1K0
Mybatis(一)走进Mybatis与FisrtExample
一直在使用,从未系统的总结起来。所以这里给大家带来的是mybatis的总结,系统大家能够对这个框架有一定的系统的学习与认识。 mybatis和Hibernate应该是现在主流的ORM框架了。 mybatis学习的步骤: mybatis入门 --> 全局配置文件和映射文件详解 --> 高级映射(一对一,一对多,多对多) -->延迟加载机制 -->一级缓存, 二级缓存(整合ehcache) --> spring整合mybatis --> 逆向工程
用户1195962
2018/08/02
6910
Mybatis(一)走进Mybatis与FisrtExample
MyBatis-动态SQL
Mybatis 的映射文件中,前面我们的 SQL 都是比较简单的,有些时候业务逻辑复杂时,我们的 SQL 是动态变化的。
星哥玩云
2022/09/14
6480
java架构之路-(源码)mybatis基本使用
  我们今天先来简单了解一下我们持久层框架,mybatis的使用。而且现在的注解成为趋势,我主要说一下注解方向的使用吧(配置文件也会说)
小菜的不能再菜
2019/09/18
5390
相关推荐
Mybatis学习笔记2
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档