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的语法规则了。

60分钟Python快速学习(给发哥一个交代)的更多相关文章
- 60分钟Python快速学习(转)
60分钟Python快速学习(给发哥一个交代) 阅读目录 第一步:开发环境搭建: 第一个Python功能:初识Python 02.Python中定义变量不需要数据类型 03.在Pythod中定义方法 ...
- 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快速学习08:模块的操作
前言 系列文章:[传送门] 天气干燥,我就上火,流鼻血.希望身子好起来. 正文 函数和对象都是为了更好的组织已经有的程序,以方便重复利用. 模块(module)也是为了同样的目的.模块可以包含可执行代 ...
- Vue.js——60分钟组件快速入门
一.组件简介 组件系统是Vue.js其中一个重要的概念,它提供了一种抽象,让我们可以使用独立可复用的小组件来构建大型应用,任意类型的应用界面都可以抽象为一个组件树: 那么什么是组件呢?组件可以扩展HT ...
- Python快速学习10: 循环的对象及设计 (生活的规律)
前言 系列文章:[传送门] 生活逐渐规律,按时睡觉.今天写博客,明天补时间看会书.慢慢的时间很珍惜 我很喜欢! 时钟就像个循环体,我们将它融入生活. 正文 循环对象的并不是随着Python的诞生就存在 ...
- Python快速学习04:循环 & 函数
前言 系列文章:[传送门] 也就今天认识了 LC ,很开心. 本文目录 循环 for while 中断 函数 函数定义 函数调用 for循环 Python 中的for 循环象shell 脚本里的for ...
- Vue.js——60分钟组件快速入门(上篇)
组件简介 组件系统是Vue.js其中一个重要的概念,它提供了一种抽象,让我们可以使用独立可复用的小组件来构建大型应用,任意类型的应用界面都可以抽象为一个组件树: 那么什么是组件呢?组件可以扩展HTML ...
随机推荐
- RadioButton(单选按钮)文字在按钮的左边
<RadioButton style="@style/CustomCheckboxTheme" android:layout_width="fill_parent& ...
- Vue - 自定义指令
1.Vue.directive(id,definition)注册一个全局自定义指令,接收两个参数,指令ID以及定义对象 2.钩子函数:将作用域与DOM进行链接,链接函数用来创建可以操作DOM的指令 b ...
- 树链剖分+线段树 HDOJ 5029 Relief grain(分配粮食)
题目链接 题意: 分粮食我就当成涂色了.有n个点的一棵树,在a到b的路上都涂上c颜色,颜色可重复叠加,问最后每一个点的最大颜色数量的颜色类型. 思路: 首先这题的输出是每一个点最后的情况,考虑离线做法 ...
- ajax返回json数据,对其中日期的解析
JS 对其格式化 方法如下 function ChangeDateFormat(d){ //将时间戳转为int类型,构造Date类型 var date = new Date(parseInt(d.ti ...
- Mac 不能输入波浪线?
当你发现你的Mac或者mbp不能输入波浪线 , 输出的都是的时候,检查一下这个选项(如下图所示)有没有选中. 如果没有,就勾上它!
- unity 协程
StartCoroutine在unity3d的帮助中叫做协程,意思就是启动一个辅助的线程. 在C#中直接有Thread这个线程,但是在unity中有些元素是不能操作的.这个时候可以使用协程来完成. 使 ...
- 微信小程序火车票查询 直取12306数据
最终效果图: 样式丑哭了,我毕竟不是前端,宗旨就是练练手,体验微信小程序的开发,以最直接的方式获取12306数据查询火车票. 目录结构: search1是出发站列表,search2是目的站列表,命名没 ...
- IPv6进阶
IPV6报文部分字段介绍 1.没有校验和字段:优点:当TTL减少时,不需要重新处理,相对于IPV4能减少处理的时间:缺点:必须在上层包含校验和2.下一个报文:可指向扩展报文:(大部分节点不处理和查看大 ...
- 理解storm的ACKER机制原理
一.简介: storm中有一个很重要的特性: 保证发出的每个tuple都会被完整处理.一个tuple被完全处理的意思是: 这个tuple以及由这个tuple所产生的所有的子tuple都被成 ...
- 关于chrome控制台那些事
作为一名前端,除了编写完美代码之外(个人还不具备),当然也要会调试啦,对于firebug比较而言,我还是更喜欢chrome控制台比较多(可能使用较多,更顺手的原因吧).所以来总结下,关于chrome控 ...