从零开始学Python

  • 一、安装Python
  • 二、基本操作
  • 三、基本运算
  • 四、判断控制语句
  • 五、循环语句
  • 六、定义函数

一、安装Python

推荐初学者安装Anaconda。安装时选择Python 2.7版本。
对于熟悉Matlab或者R的初学者,推荐使用Anaconda中的Jupyter和Spyder作为python的编译器。

二、基本操作

1.输出到屏幕
Python中print函数可以将结果输出到屏幕。在Python 2.7中,以下两种方式皆可。

print "Hello SofaSofa!"
print('Hello SofaSofa!')

2.定义变量与赋值
在Python中,定义变量时不需要声明变量的类型,但是需要赋值。用=表示赋值。

a = 3
b = 2.5

有时为了方便,我们也可以把上面的两个赋值命令写成:

a, b = 3, 2.5

上面的变量是数值类型的。我们也可以定义字符型、布尔型的变量。

my_string = 'sofa'
flag_1 = True
flag_2 = False

如果只是想定义变量,却不想赋予初始值,可采用:

my_variable = None

对于已经声明过的变量,我们可以进行重新赋值。如下:

my_int = 5
my_int = 3
print my_int

小实验:python中的变量名区分大小写吗?可以试试如下的命令,看看结果如何?

a = 3
A = 2
print a

3.注释
在代码中添加注释,用助于代码的可读性,有时也有助于对代码debug。Python中有两种添加注释的方式。

在行首插入#,整行会成为注释。
把段落放在三个双引号中,整个段落会成为注释。

# This is a comment. The following code will define my_int and then change its value.
my_int = 5
my_int = 3
"""
This paragraph is a comment.
The first line defined and initialized my_int.
The second line changed the value of my_int.
"""

4.设置中文环境
我们可以用以下代码,实现在Python中显示中文。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
print "欢迎加入SofaSofa数据科学社区!"

三、基本运算

5.四则运算
下面我们来看看如何用Python进行四则运算。

# 定义变量a,b
a, b = 2, 3
# 加法
c = a + b
# 减法
c = a - b
# 乘法
c = a * b
# 括号的使用
c = 2 * (a + b) - 1
# 除法,看看结果是多少,和你想的一样吗?
c = a / b
d = b / a
print c, d

+=运算,-=运算,*=运算,/=运算

# 试试看这些运算符都是什么意思
a = 2
a += 3
print a
a -= 2
print a
a *= 3
print a
a /= 2.5
print a

6.变量数值类型
上面的例子我们可以看出,3/2的结果是1。为了得到1.5,我们需要对变量的数值类型进行转换。

一种方式是在任意其中一个整数后加小数点来表示这个数的类型是浮点数,这样最终的结果就会是浮点数。

# 查看变量a的类型
a = 3
b = 2
print type(b)
print a / b
b = 2.
print type(b)
print a / b

另一种方式是用内置函数float(X)将数值变量X转换为浮点型。

a = 3
b = 2
# 将浮点型的b定义为变量c
c = float(b)
print a / b, a / c

同样,我们也可以用内置函数int(X)将浮点型变量X转化为整数型变量。

d = int(1.)
print type(d)# 试试 int(0.5), int(1.9), int(-2.1), int(-0.9) 的返回值分别是多少呢?

7.其他基本数学运算
除了四则运算,还有其他一些常用的运算。比如新手入门经常被坑的幂方运算。

a = 3
# a的三次方,注意了,Python中没有 a^3 的用法。
print a ** 3
# a的平方根
print a ** 0.5

整除运算和取余运算

# 整除
a = 10.5 // 3
print a
# 取余
a = 11 % 3
print a

取绝对值、最大值、最小值

a = abs(-2.5)
b = max(2, 5, 3)
c = min(1, 3, -3)
print a, b, c

8.逻辑运算
逻辑判断,大于>,小于<,等于==,小于等于<=,大于等于>=,不等于!=。

a, b = 3, 2
# 判断a是否小于等于b
print a <= b
print a == min(a, b)

逻辑或,or,|

逻辑与,and,&

# 逻辑或
print True or False
print True | False
# 逻辑与
print True and False
print True & False

逻辑是,is,用来判断两者是否相同

# 逻辑是
# 试一试下面的命令,结果是你想的那样吗?
print 2 is '2'
print 2 is 2
print 2 is 2.
print 2 == 2.

逻辑非,not,用来表示否定

print not True
print not False
a = not((2 > 3) & (4 > 3))
print a

四、判断控制语句

9.if语句
类似与其他编程语言,python也使用if作为判断控制语句的关键词。注意判断语句需要以冒号:结束,执行语句需要缩进四格。当判断为真,执行;若判断为假则跳过。

# Python是强对齐语言,也就是说我们需要严格遵守缩进。
# 在下面的例子中,首行是判断语句,第二行是执行语句(当判断结果为True才执行)。
# 执行语句开头需要空出四格,通常我们使用tab键来缩进。if 2 > 1:print "SofaSofa is good!"

10.if-else语句
与if语句不同的是,if-else语句中,若判断为False,则执行else后的语句。同样的是,请注意if和else的冒号,以及其他行的缩进。例子如下:

# if condtion:
#    do A
# else:
#    do Ba = 3
if a > 0:print 'a是正数。'
else:print 'a不是正数。'

11.if-elif语句
if-elif语句中,可以插入多个判断语句,程序会从上到下依次进行判断,直到得到True为止,或者完成所有的判断后跳出。

# 试试下面两者不同的顺序,看看结果分别是什么。# 第一种if-elif顺序。
a = 3
if a < 1:print 'a > 1'
elif a < 10:print '1 < a < 10'
else:print 'do nothing'# 第二种if-elif顺序。
a = 3
if a < 10:print 'a < 10'
elif a < 1:print '你能搞明白这是什么情况吗'
else:print 'do nothing'

12.嵌套if语句
我们也可以嵌套多层if语句。请注意对应的缩进。

a = -2if a > 0:if a % 1 == 0:print 'a是正整数'else:print 'a是正小数'
elif a < 0:if a % 1 == 0:print 'a是负整数'else:print 'a是负小数'
else:print 'a是0'# 有时我们也可以通过逻辑与、逻辑或讲嵌套的多层if语句,写成单层if语句。
# 你可以试着把上面的语句改成单层if语句吗?

五、循环语句

13.for语句
我们这里简单介绍for语句,for语句更多用法,可以参考“掌握Python中list, dict, set”(to be added)。与if语句一样,请注意缩进。

# 我们可以通过以下方式,重复执行命令5次
for i in range(5):print "这句话会出现5次。"
# 再来试试以下的循环语句
for i in range(5):print "这句话会重复出现。这是第", str(i), "次。"

14.while语句
while语句是先判断再执行,直到判断结果为False,循环中止。

a = 1
while a < 5:a += 1
print a# 再试试while-else,结果有不同吗
a = 1
while a < 5:a += 1
else:print a

while语句等同于if语句配合使用break。

a = 1
for i in range(10000):a += 1if a >= 5:break
print a

六、定义函数

15.定义和调用简单函数
我们可以通过关键词def自定义函数。

# 下面是个简单的例子:定义一个函数,函数名为my_func,作用是输出一段话。
def my_func():print 'I love SofaSofa!'# 调用my_func,试试下面的结果如何?
my_func()

上面定义的my_func是没有输入值。我们也可以定义有输入值的函数。

# 下面是个简单的例子:定义一个函数,函数名为my_func,作用是将输入变量的数值输出到屏幕上。
def my_func(a):print 'The input number is', str(a)# 调用my_func,试试下面的结果如何?
my_func(4)
my_func(3.5)

上面定义的my_func是只有输入值,没有返回值的函数。我们也可以通过关键词return来输出返回值。

# 下面是个简单的例子:定义一个函数,函数名为my_func,作用是将输入数值加1,并返回。
def my_func(a):result = a + 1return result# 调用my_func,试试下面的结果如何?
print my_func(4)
b = my_func(3.5)
print b

16.定义和调用多元函数
我们可以通过关键词def自定义多元函数。

# 下面是个简单的例子:定义一个函数,函数名为add_a_b,作用是将输入数值a与b相加,并返回。
def add_a_b(a, b):return a + bprint add_a_b(3.8, 2.3)# 下面是个三元函数的例子:定义一个函数,函数名为`is_a_min`,作用是将对输入数值a,b,c判断a是否为其中最小值
def is_a_min(a, b, c):min_value = min(a, b, c)return a == min_valueprint is_a_min(2, 5, -1)

17.定义一个递归函数
我们可以通过对函数自身反复调用来实现递归。下面的例子是求解斐波那契数。

# 在这个例子中,我们除了展示了递归地调用函数本身,也展示了如何在不同的情况返回不同的结果。
def fibo(n):if n == 1:return 1elif n == 2:return 1elif n >= 3:return fibo(n-1) + fibo(n-2)print fibo(8)

18.函数定义中套用其他函数
在上面,我们已经使用了在一个函数中调用自身。更广泛的,我们可以调用任何自己已定义过的函数。

# 回顾之前我们定义的函数add_a_b,我们可以用来定义一个平方和函数square_sum。
def add_a_b(a, b):return a + bdef square_sum(a, b):return add_a_b(a, b) ** 2print square_sum(2, 3)

19.小实验
此次小实验为本教程的小结。定义函数third_side(a, b)并达到以下功能。

# 假设a和b分别是直角三角形的两个直角边的长度。
# 设计一个函数third_side(a, b),返回这个直角三角形的斜边长。
# 如果a或者b小于等于0,则返回0。

参考:http://sofasofa.io/tutorials/python_zero/index.php

python零基础简明教程相关推荐

  1. 视频教程-Python零基础入门教程-Python

    Python零基础入门教程 从2012年从事互联网至今有7年软件编程经验,曾任职国内北京互联网公司,中南林业大学授课Python 现任逻辑教育Python课程负责人,精通Python语言,精通人工智能 ...

  2. Python零基础入门教程( 快速入门)

    前言 学无止境,无止境学. 今天要给大家分享的是<Python零基础入门教程01 快速入门>,这是一个系列的教程,从零基础到项目实战.在本教程中,我会给大家介绍Python入门的一些基础知 ...

  3. python零基础入门教程视频下载-Python零基础入门学习视频教程全42集,资源教程下载...

    课程名称 Python零基础入门学习视频教程全42集,资源教程下载 课程目录 001我和Python的第一次亲密接触 002用Python设计第一个游戏 003小插曲之变量和字符串 004改进我们的小 ...

  4. python零基础入门教程免费版_毫无基础的人如何入门 Python ?Python入门教程拿走不谢啦!...

    随着人工智能的发展,Python近两年也是大火,越来越多的人加入到Python学习大军,对于毫无基础的人该如何入门Python呢?这里整理了一些个人经验和Python入门教程供大家参考. 如果你是零基 ...

  5. python零基础入门教程(非常详细),从零基础入门到精通,看完这一篇就够了

    前言 本文罗列了了python零基础入门到精通的详细教程,内容均以知识目录的形式展开. 第一章:python基础之markdown Typora软件下载 Typora基本使用 Typora补充说明 编 ...

  6. python编程语言零基础入门-程序员大佬,给Python零基础入门书籍教程的一些建议!...

    Python对于初学者来说,比起其他编程语言,Python 更容易上手.加上很多企业都使用Python编程语言,促进了Python程序员的市场需求量增加.将Python作为主要开发语言的开发者中有61 ...

  7. python教程书籍-程序员大佬,给Python零基础入门书籍教程的一些建议!

    Python对于初学者来说,比起其他编程语言,Python 更容易上手.加上很多企业都使用Python编程语言,促进了Python程序员的市场需求量增加.将Python作为主要开发语言的开发者中有61 ...

  8. python编程入门书籍-程序员大佬,给Python零基础入门书籍教程的一些建议!

    Python对于初学者来说,比起其他编程语言,Python 更容易上手.加上很多企业都使用Python编程语言,促进了Python程序员的市场需求量增加.将Python作为主要开发语言的开发者中有61 ...

  9. python零基础入门教程学习要多久-廖雪峰python教程要学多久-零基础学Python需要多久...

    零基础学python大约需要多久 看不同的人,不同的学习能和基础. 像我通java,vc ,javascript,groovy,vb,c 接触过c#,delphi,asp,E语言, 用过dreamwa ...

  10. Python locals 函数 - Python零基础入门教程

    目录 一.locals 函数语法 二.locals 函数使用 三.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 一.locals ...

最新文章

  1. kvm虚拟化学习笔记(十一)之kvm虚拟机扩展磁盘空间
  2. Home-brew 安装卸载 Git
  3. 值得关注的医疗 AI 公司(待续)
  4. STM32的同步规则模式使用
  5. python练习题:列表排序
  6. python 安装虚拟环境virtualenv
  7. Codeforces数据结构(水题)小结
  8. python画点云_python scipy Delaunay绘制点云
  9. Java案例:Swing摇奖器
  10. mysql suoyin 和锁_mysql 索引和锁
  11. large margin-人脸识别
  12. 删除替换字符串中第一次出现的字符串
  13. 【代码源 Div1 - 105】#451. Dis(倍增求LCA)
  14. Geoserver入门操作系列之二:创建图层样式
  15. 登录邮恰显示服务器登录失败,邮洽邮箱收不到邮件是什么原因?
  16. linux操作系统课程设计总结,计算机操作系统(课程设计)报告.docx
  17. Hololens开发笔记_在Unity运行没问题,在Hololens跑出现PathNotFoundException:Could not find a part of path.
  18. 如何零成本实现微信公众号自助查券返利机器人(六)
  19. stm32移植lvgl
  20. 大数据平台技术——Scala+Hbase学习

热门文章

  1. Python中re.findall的贪心和非贪心算法
  2. Mac下配置Nginx负载均衡
  3. http虚拟主机的简单配置训练
  4. Ngnix 安装、信号量、虚拟主机配置
  5. linux监控程序-程序自动重启方法(转)
  6. catalan数的应用
  7. python生成动态链接二维码
  8. 如何打开python3.7.4_Python3.7.4入门-5输入输出
  9. MFC获取指针.doc
  10. Mean filter 和 Gaussian filter对比