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属于“胶水语言啦”,属于“解释型语言啦!”,是“面向对象的语言啦!”,另外没有数据类型,逻辑全靠空 ...
- 60分钟Python快速学习(转)
60分钟Python快速学习(给发哥一个交代) 阅读目录 第一步:开发环境搭建: 第一个Python功能:初识Python 02.Python中定义变量不需要数据类型 03.在Pythod中定义方法 ...
- 转: 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)的 ...
随机推荐
- jquery.data.resource.js
/*! * jQeury Data Pkugin * version: 1.0.0-2016.03.03 * Requires jQuery v1.10.2 or later * Copyright ...
- 排序算法,以php为代码示例
一.冒泡排序 <?php/** * Created by PhpStorm. * User: 郑楚周 * Date: 2018/9/28 * Time: 16:10 */ /**冒泡排序 * C ...
- Kvm:通过 libvirt 远程管理虚拟机
1.通过qemu+ssh方式 2.通过qemu+tcp方式 主控端需要安装相关工具包: #yum groupinstall "Virtualization" #yum instal ...
- UVALive 6507 Passwords
Passwords Time Limit: 3000ms Memory Limit: 131072KB This problem will be judged on UVALive. Original ...
- 数据库 SQL SQL转义
SQL转义 @author ixenos 前言 类似文件分隔符在不同系统的实现不同,我们需要一个中间的转义字符来作为接口,各厂商再具体实现 而SQL的转义语法主要为了支持各种数据库普遍支持的特性,但各 ...
- [luoguP1042] 乒乓球(模拟)
传送门 终于过了这sb题了. 当初我连这道题都A不了(╯▔皿▔)╯ 代码 #include <cstdio> #include <iostream> #define N 100 ...
- hdu 1251简单字典树
#include<stdio.h> #include<iostream> #include<string.h> using namespace std; struc ...
- 基于jQuery的图片加载loading效果插件
基于jQuery的图片加载loading效果插件 图片loading的效果是网页中比较常见的,尤其是对大图片,loading效果让用户能够明白图片加载的过程. 实现思路也是比较简单的: $.fn.Lo ...
- Gym 100792 King's Rout 拓扑排序
K. King's Rout time limit per test 4.0 s memory limit per test 512 MB input standard input output st ...
- Codeforces 651E Table Compression【并查集】
题目链接: http://codeforces.com/problemset/problem/650/C 题意: 给定n*m的矩阵,要求用最小的数表示每个元素,其中各行各列的大小关系保持不变. 分析: ...