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快速学习(转)的更多相关文章

  1. 60分钟Python快速学习(给发哥一个交代)

    60分钟Python快速学习 之前和同事谈到Python,每次下班后跑步都是在听他说,例如Python属于“胶水语言啦”,属于“解释型语言啦!”,是“面向对象的语言啦!”,另外没有数据类型,逻辑全靠空 ...

  2. 60分钟Python快速学习

    之前和同事谈到Python,每次下班后跑步都是在听他说,例如Python属于“胶水语言啦”,属于“解释型语言啦!”,是“面向对象的语言啦!”,另外没有数据类型,逻辑全靠空格缩进表示等. 今天自己用了6 ...

  3. 转: Vue.js——60分钟组件快速入门(上篇)

    转自: http://www.cnblogs.com/keepfool/p/5625583.html Vue.js——60分钟组件快速入门(上篇)   组件简介 组件系统是Vue.js其中一个重要的概 ...

  4. Python快速学习01:Eclipse上配置PyDev & 'Hello World !'

    前言 系列文章:[传送门] 答应了Vamei,帮他传文章,Python,顺自己学学. 很喜欢这种黏黏的语言 突然发现--我用的GoAgent(谷歌FQ软件),竟然是Python编的. 简介 Pytho ...

  5. Python快速学习10: 循环的对象及设计 (生活的规律)

    前言 系列文章:[传送门] 生活逐渐规律,按时睡觉.今天写博客,明天补时间看会书.慢慢的时间很珍惜 我很喜欢! 时钟就像个循环体,我们将它融入生活. 正文 循环对象的并不是随着Python的诞生就存在 ...

  6. Python快速学习04:循环 & 函数

    前言 系列文章:[传送门] 也就今天认识了 LC ,很开心. 本文目录 循环 for while 中断 函数 函数定义 函数调用 for循环 Python 中的for 循环象shell 脚本里的for ...

  7. Vue.js——60分钟组件快速入门(上篇)

    组件简介 组件系统是Vue.js其中一个重要的概念,它提供了一种抽象,让我们可以使用独立可复用的小组件来构建大型应用,任意类型的应用界面都可以抽象为一个组件树: 那么什么是组件呢?组件可以扩展HTML ...

  8. Vue.js——60分钟组件快速入门

    一.组件简介 组件系统是Vue.js其中一个重要的概念,它提供了一种抽象,让我们可以使用独立可复用的小组件来构建大型应用,任意类型的应用界面都可以抽象为一个组件树: 那么什么是组件呢?组件可以扩展HT ...

  9. Python快速学习09: 函数的参数

    前言 系列文章:[传送门] 继续干起来!! 正文 我们已经接触过函数,函数是可以被引用的(访问或者以其他变量作为其别名),也作为参数传入函数,以及作为列表和字典等等容器对象的元素(function)的 ...

随机推荐

  1. 二十7天 春雨滋润着无形 —Spring依赖注入

    6月11日,明确."夏条绿已密,朱萼缀明鲜.炎炎日正午,灼灼火俱燃." IT人习惯把详细的事物加工成的形状一致的类.正是这种一致,加上合适的规范.才干彰显对象筋道的牙感和bean清 ...

  2. [Elasticsearch] 控制相关性 (一) - 后面的相关度分值理论计算

    从第一章翻译Elasticsearch官方指南Controlling Relevance一章. 控制相关度(Controlling Relevance) 对于仅处理结构化数据(比方日期.数值和字符枚举 ...

  3. [置顶] 利用CXF发布webService的小demo

    其实webService的发布不仅仅只有xfire,今天,给大家介绍一下用CXF发布一个webService的小demo,CXF也是我做webService用的第一个框架... 先将相关的jar引进来 ...

  4. 移植 libuv 至 Visual C++ 6.0 并支持 Windows XP 编译系统

    移植版本 libuv:https://github.com/liigo/libuv-vc6 (支持VC6和XP.作者Liigo). 我从一年前(大概2013年6,7月份)開始在业余时间做这项移植工作, ...

  5. DIY.NETORM帧——技术储备(1)Attribute

    1.他是什么 ? 首先.我们当然Attribute它是一类,以下是一msdn文档对它的描写叙述:          公共语言执行时同意你加入类似keyword的描写叙述声明,叫做attributes, ...

  6. windows azure Vm、cloud service、web application 如何选择可用的服务

    windows azure 的web应用和虚拟机都经常用.我们经常把我们的网站部署上去.一般选择web应用或者开一个虚拟机.开一个虚拟机就会按照虚拟机的使用时间进行计费. 那么我们选择web部署在哪里 ...

  7. Facebook Hacker Cup 2015 Round 1--Corporate Gifting(树动态规划)

    原标题:https://www.facebook.com/hackercup/problems.php?pid=759650454070547&round=344496159068801 题意 ...

  8. 高速理解掌握node.js 字符编码,确码过程 以及base64编解码原理

    var buf1 = new Buffer('a','ascii'); // 字符'a' -> ascii编码 -> 61 存在计算机中 console.log(buf1); var b ...

  9. [LeetCode82]Remove Duplicates from Sorted List II

    题目: Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct  ...

  10. 一个不错的 png压缩工具 pngquant 使用介绍 批量压缩png

    1.Png 简介. 我们知道Png 有4个通道,RGBA, 多了一个表示透明的.png 有 png 32, 24, 8 等. 大致我理解的是表示颜色的多少. 数字越小,文件就越小.常见的压缩方式是导入 ...