60分钟Python快速学习(转)
60分钟Python快速学习
之前和同事谈到Python,每次下班后跑步都是在听他说,例如Python属于“胶水语言啦”,属于“解释型语言啦!”,是“面向对象的语言啦!”,另外没有数据类型,逻辑全靠空格缩进表示等。
今天自己用了60分钟快速学习了下Python的语法。和大家分享下,也算是自己这一个小时的学习总结吧!
第一步:开发环境搭建:
PyCharm 4.5.4
下载地址:http://www.jetbrains.com/pycharm/download/

支持多种类型的操作系统,我这次是在Window 7 上安装的。
下载后,傻瓜式的Next即可。
需要的插件(在PyCharm中集成的引擎),也就是Python下载地址
https://www.python.org/downloads/release/python-2710/
这里需要注意的是如果你先安装的PyCharm开发工具,然后才安装了Python,那么需要重启下PyCharm软件,让他自己去找你安装的Python作为项目环境支持。别担心,他可以自动获取。

创建好项目后,就可以开工了。
先上一张图

上图一个文件对应一个Python语法块
当在项目下创建一个包后,就会默认创建一个_init_.py(别小看他,后面会说我是怎么被他坑的)。
第一个Python功能:初识Python
这个案例主要说两件事情:
01.PyCharm环境中如何支持中文。
操作方案:
点开菜单栏的第一项“File”→“Settings”,然后做如下图的设置

这里注意一个问题,如果当前Project Encoding中设置的编码为”UTF-8”,那么在我们自己的项目文件中,必须设置成UTF-8,否则会出现乱码。当然,如果你Project Encoding中设置的编码为”gb2312”,那么项目文件中的编码也得设置成”gb2312”

02.Python中定义变量不需要数据类型
有了基本的变量基础,接下来我们就可以讨论分支了。这也是学习任何一门语言的套路,
变量
分支结构
循环结构
数组
方法定义
类定义
继承和多态
导入包或者命名空间
那么接下来我们讨论分支结构

# coding=utf-8 __author__ = 'Happy' score=90 if(score>=90): print("你真棒") elif(score>=80): print("优秀") elif(score>=60): print("良好")
解析:没错,Python中没有{},用:表示代码块,然后就是语句结束不用分号。完全通过缩进表示逻辑
03.循环结构

# coding=utf-8 __author__ = 'Happy' for i in range(0,3): print(i) print("end")
解析;看到没,for循环的语法是这样的,怎么区分”end”只被输出一次呢??可以通过缩进。对的。又是缩进。
03.在Pythod中定义方法

#coding=utf-8 __author__ = 'Happy' def SayHello(): print("Hello") # 调用方法 SayHello()
解析:就是用def作为前缀,和js差不多对吧!,呵呵!@
然后还是通过:作为方法的代码块
方法调用直接通过方法名调用就OK!这个例子中可以看出用# 内容的方式书写Python中的注释。
04.在Python中书写自己的类

#coding=utf-8 __author__ = 'Happy' class Dog: def __init__(self,name): self.name=name def Eat(self): print("hello,{0}".format(self.name)) F=Dog("豆豆") F.Eat()
解析:没错,定义自己的构造就是def _init_(self,参数列表),然后不用事先形成类的成员变量,即可用self.属性,呵呵是不是很强大。这里需要注意,不要将_init_写成 _int_(血的教训啊),然后创建对象,也不用new 关键字。直接构造就Ok。呵呵!@
05.Python中继承和导入外部类的解决方案

# coding=utf-8 __author__ = 'Happy' class FirstTest: def __init__(self,name): self.name=name print("First,{0}".format(self.name)) def FirstMM(self): print("Parent Method") class SecondTest(FirstTest): def __init__(self,name): FirstTest.__init__(self,name) def SecondMM(self): print(self.name) S=SecondTest("happy") S.FirstMM() S.SecondMM() #导入 Teacher.py文件中的GoodTeacher类 from Teacher import GoodTeacher GT=GoodTeacher() GT.Eat()
Teacher.py文件内容如下

# coding=utf-8 __author__ = 'Happy' class GoodTeacher: def __init__(self,name): self.name=name def Eat(self): print("Eat something")
解析:没错,继承只需要在第二个类定义时加上(父类名称)即可,然后在子类构造中的方法体中再调用父类构造就OK。和Java和C#差不多啊!
导入外部类的方法就是 from 文件(不要后缀) import 文件中的类名
接下来就可以使用外部的类中成员了。
呵呵!
好了,刚好一节课了。
最后说下在vs2013中也是可以配置Python的开发环境的。
这里就简单的贴张图作为收尾,也算是对发哥有个交代了。可以说发哥我简单了解了Python的语法规则了。

http://www.cnblogs.com/weilengdeyu/p/4821025.html
python是强类型语言,怎么可能没有类型。
空格缩进是为了控制代码块,就像{}一样,和控制逻辑不是一个概念吧
60分钟Python快速学习(转)的更多相关文章
- 60分钟Python快速学习(给发哥一个交代)
60分钟Python快速学习 之前和同事谈到Python,每次下班后跑步都是在听他说,例如Python属于“胶水语言啦”,属于“解释型语言啦!”,是“面向对象的语言啦!”,另外没有数据类型,逻辑全靠空 ...
- 60分钟Python快速学习
之前和同事谈到Python,每次下班后跑步都是在听他说,例如Python属于“胶水语言啦”,属于“解释型语言啦!”,是“面向对象的语言啦!”,另外没有数据类型,逻辑全靠空格缩进表示等. 今天自己用了6 ...
- 转: Vue.js——60分钟组件快速入门(上篇)
转自: http://www.cnblogs.com/keepfool/p/5625583.html Vue.js——60分钟组件快速入门(上篇) 组件简介 组件系统是Vue.js其中一个重要的概 ...
- Python快速学习01:Eclipse上配置PyDev & 'Hello World !'
前言 系列文章:[传送门] 答应了Vamei,帮他传文章,Python,顺自己学学. 很喜欢这种黏黏的语言 突然发现--我用的GoAgent(谷歌FQ软件),竟然是Python编的. 简介 Pytho ...
- Python快速学习10: 循环的对象及设计 (生活的规律)
前言 系列文章:[传送门] 生活逐渐规律,按时睡觉.今天写博客,明天补时间看会书.慢慢的时间很珍惜 我很喜欢! 时钟就像个循环体,我们将它融入生活. 正文 循环对象的并不是随着Python的诞生就存在 ...
- Python快速学习04:循环 & 函数
前言 系列文章:[传送门] 也就今天认识了 LC ,很开心. 本文目录 循环 for while 中断 函数 函数定义 函数调用 for循环 Python 中的for 循环象shell 脚本里的for ...
- Vue.js——60分钟组件快速入门(上篇)
组件简介 组件系统是Vue.js其中一个重要的概念,它提供了一种抽象,让我们可以使用独立可复用的小组件来构建大型应用,任意类型的应用界面都可以抽象为一个组件树: 那么什么是组件呢?组件可以扩展HTML ...
- Vue.js——60分钟组件快速入门
一.组件简介 组件系统是Vue.js其中一个重要的概念,它提供了一种抽象,让我们可以使用独立可复用的小组件来构建大型应用,任意类型的应用界面都可以抽象为一个组件树: 那么什么是组件呢?组件可以扩展HT ...
- Python快速学习09: 函数的参数
前言 系列文章:[传送门] 继续干起来!! 正文 我们已经接触过函数,函数是可以被引用的(访问或者以其他变量作为其别名),也作为参数传入函数,以及作为列表和字典等等容器对象的元素(function)的 ...
随机推荐
- 网站上flv,MP4等格式的视频文件播放不出来的解决办法
在做一个网站时,发现视频文件,比如flv,MP4格式在本地可以正常的播放,但是传到了开发机器上,就不行了.播放器的文件地址是对的,就是一直没有反应. 经过长时间的实验,发现问题在与iis的设置问题.i ...
- Javadoc的Html文件传输chm
Javadoc的Html文件转chm 工具下载地址:http://msdn.microsoft.com/en-us/library/ms669985.aspx 两篇相关文章: MyEclipse ...
- STL 源代码分析 算法 stl_algo.h -- merge
本文senlie原版的,转载请保留此地址:http://blog.csdn.net/zhengsenlie merge (应用于有序区间) ------------------------------ ...
- AutoFac使用方法总结:Part I
注册部分 使用RegisterType进行注册 [Fact] public void can_resolve_myclass() { var builder = new ContainerBuilde ...
- style.display table-row与block
<tr id="js_rowShow" style=" display:none"> </tr> 问题: display:设置成bloc ...
- linux下改动内核參数进行Tcp性能调优 -- 高并发
前言: Tcp/ip协议对网络编程的重要性,进行过网络开发的人员都知道,我们所编写的网络程序除了硬件,结构等限制,通过改动Tcp/ip内核參数也能得到非常大的性能提升, 以下就列举一些Tcp/ip内核 ...
- ZOJ Problem Set - 2563 Long Dominoes 【如压力dp】
称号:ZOJ Problem Set - 2563 Long Dominoes 题意:给出1*3的小矩形.求覆盖m*n的矩阵的最多的不同的方法数? 分析:有一道题目是1 * 2的.比較火.链接:这里 ...
- 【BZOJ1014】【JSOI2008】火星人prefix Splay处理区间,hash+dichotomy(二分)check出解
题意不赘述了,太清晰了. 说题解:首先依据原字符串建立SPT.首尾建议多加一个空白字符. 给一个树构图,依照平衡树的前后大小顺序性质能够使它们始终维持为一个序列,而且能够通过rank找到序列的第k个. ...
- 使用SQLServer Audit来监控触发器的启用、禁用情况
原文:使用SQLServer Audit来监控触发器的启用.禁用情况 使用情景: 有时候会发现在触发器中的业务逻辑没有执行,可能是因为触发器的逻辑错误所引起的.但是有时候却是因为一些触发器被禁用了. ...
- Java String类的比较运算
面试题:(多选)以下返回true的有() A. "beijing" == "beijing" B. "beijing".equals(new ...