安装与运行交互式解释器

在绝大多数linux和 UNIX系统安装中(包括Mac OS X),Python的解释器就已经存在了。我们可以在提示符下输入python命令进行验证(作者环境ubuntu)

  1. fnngj@fnngj-H24X:~$ python
  2. Python 2.7.3 (default, Sep 26 2012, 21:53:58)
  3. [GCC 4.7.2] on linux2
  4. Type "help", "copyright", "credits" or "license" for more information.
  5. >>>

Ok ! 如果敲入python命令出现以上信息时,表明我们已经安装了python 环境。

如果没有安装,在ubuntu /Debin linux ,那么可以用下面的命令来安装Python:

  1. $ apt-get install python

如果是window 下的安装,以及linux 下下载源码包的安装,相信此类人问题很容易找到,这里就不具体讲解了。相信比第一次配置java环境要简单的多。

输入一下命令,看其是否可以正常运行。

  1. >>> print "hello,world!"
  2. hello,world!

注意:如果要推出交互式解释器,可以ctrl+D

算法是什么?

在认真编程之前,先来说说什么是计算机程序设计,简单地说,计算机程序设计就是告诉计算机做什么事。计算机可以做很多事,但它不会自己思考,需要我们告诉它具体细节,需要用计算机能够理解的语言将算法告诉它。“算法”不过是“程序”或者“食谱”的另一种悦耳的说法----详细描述如何做某事。

小葱拌豆腐、豆腐、

首先,拿一些豆腐;(声明一个变量)

然后加入小葱在豆腐上。(两个变量相加)

如果需要特殊辣味的豆腐。(考虑特定的条件)

煮熟---每10分钟检查一次。(重复运行此指令)

食谱和算法都包含一些要素(对象、物品),以及指令(语句)。“小葱” 和“ 豆腐” 就是要素。指令包括“加入小葱在豆腐上” 等。

数字和表达式:

交互式python解释器可以当强大的计算器使用

  1. >>> 1-2
  2. -1
  3. >>> 1+2
  4. 3
  5. >>> 32784*13
  6. 426192
  7. >>> 1/2
  8. 0

什么情况?1除2 不是应该等于0.5么?怎么是0呢? “/” 用于取整,不够整除,肯定就是0了,试试浮点数

  1. >>> 7/2
  2. 3
  3. >>> 1.0/2.0
  4. 0.5

试试“%” 取余

  1. >>> 6 % 3
  2. 0
  3. >>> 6 / 3
  4. 2
  5. >>> 6 % 3
  6. 0
  7. >>> 7 / 3
  8. 2
  9. >>> 7 % 3
  10. 1
  11. >>> 13 % 9
  12. 4
  13. >>> 0.75 % 0.5
  14. 0.25

看明白整除(/)与取余(%)的区别了吧。

6 / 3 刚好被2整除,所以余数(%)是0 , 13 / 9 只能带得到1个9 ,余数就是4 。

下面再试试“ ** ” 幂运算(乘方)符

  1. >>> 2*2*2
  2. 8
  3. >>> 2**3
  4. 8
  5. >>> 2**6
  6. 64
  7. >>> -3**2
  8. -9
  9. >>> (-3)**2
  10. 9

2的3次方可以用乘方符(**)表示,这样就相当方便。

乘方符的比取反(一元减运算符)的优先级高,所以-3**2 等同于-(3**2),如果想计算(-3)**2 ,就需要显式说明。

长整数

python可以处理非常大的数

  1. >>> 100000000000000000000000
  2. 100000000000000000000000L
  3.  
  4. >>> 100000000000000000000000L
  5. 100000000000000000000000L

普通整数在2 147 483 647 至 -2 147 483 647 之间,超出可以用长整形表示(L) ,我们也可以自己把整数转换成长整型(输入时在末尾加“L”)

变量

这个和其他编程语言没有任何不同,如果你从没接触过程序,相信你也很容易理解。

  1. >>> x = 3
  2. >>> x*2
  3. 6
  4. >>> x = 5
  5. >>> x * 2
  6. 1

把3 赋值给 x ,那么x 变量现在的值就是3, x 乘以 2 结果是6 ,我又把5 赋值给了 x ,那么与2相乘的结果肯定是10了。

定义变量规则:不能以数字开头,可以包含字母、数字和下划线。

语句

实际上最开始我们已经讲了语句 print 就是打印输出语句。

  1. >>> 2*2
  2. 4
  3.  
  4. >>> print 2*2
  5. 4

虽然结果一样,上面的是表达式,下面的是语句。

获取用户输入

有使用程序运行的过程需要用户输入,根据用户输入的内容继续执行。

  1. >>> input("输入表达式:")
  2. 输入表达式:2*2
  3. 4

程序的第二行等待用户输入,2*2 是由用户随便输入的。下面看个更有意思点的。

  1. >>> x=input("x:")
  2. x:15
  3. >>> y=input("y:")
  4. y:32
  5. >>> print x*y
  6. 480

哎~!别傻看了,和我一起敲才有意思呢! 我保证下面的你看不懂!

  1. >>> if 1==2 : print 'one equals two'
  2. ...
  3. >>> if 1==1 : print 'one equals one'
  4. ...
  5. one equals one

算了,告诉你吧,如果1等于(==)2,条件是假(就是不成立),print 'one equals two' 将不被执行。

如果1等于(==)1,条件是真(成立),print 'one equals ' 将被执行。

函数

前面介绍过使用幂运算符(**)来计算乘方。事实上,可以用函数来代替运算符,这个函数就是pow :

  1. >>> 2**3
  2. 8
  3.  
  4. >>> pow(2,3)
  5. 8

函数就像可以用来实现特定功能的小程序一样。python的很多函数都做很奇妙的事情。我们也可以自定义函数。因此,我们通常把pow等系统提供的函数称为 内建函数。

  1. >>> 10+pow(2, 3*5)/3.0
  2. 10932.666666666666
  3.  
  4. >>> abs(-10)
  5. 10
  6. >>> 18/13
  7. 1
  8. >>> round(18.4/13.7)
  9. 1.0

我们当热可以使用函数调用和运算符创建更复杂的表达式; abs()函数可以得到数人绝对值,round函数则会把浮点数四舍五入为最接近的整数值。

模块

可以把模块想象成导入到python以增强其功能的扩展。需要使用特殊人命令import来导入模块。

  1. >>> import math
  2. >>> math.floor(32.9)
  3. 32.0
  4. >>> int(math.floor(32.9))
  5. 32

floor 函数的功能是取整。因为floor()函数属于math模块,所以在使用之前要先导入模块(import math),然后按照(模块.函数)的格式使用这个模块的函数。

如果想把32.9转换为整数(32)而不是浮点数(32.0),可以使用int函数。

在确定自己不会导入多个同名函数(从不同模块导入)的情况下,你可能不希望在每次调用函数的时候,都要写模块的名字。那么,可以使用import命令的另外一种形式:

  1. >>> from math import sqrt
  2. >>> sqrt(9)
  3. 3.0
  4. >>> sqrt(8)
  5. 2.8284271247461903

sqrt()函数用于计算一个数的平方根。

保存并执行程序

本人在ubuntu 下进程学习,一个python命令就进入了交互式解释器。交互式解释器是python的强项之一,它让实时检验解决方案并且体验这门语言成为了现实。但是,在交互式解释器里面输入的一切都会在它退出的时候丢失。我们真正想做的事情是编写自己和他人都能运行的程序。

  1. 下面我们创建一个文件
  2. root@fnngj-H24X:/hzh/python# touch hell.py
  3. root@fnngj-H24X:/hzh/python# ls
  4. hell.py
  5. root@fnngj-H24X:/hzh/python# vi hell.py
  6. 输入:
  7. print hello,world!”
  8.  
  9. 保存退出。运行
  10. root@fnngj-H24X:/hzh/python# python hell.py
  11. hello,world!

看!这就是一个可以一直运行的程序。 好吧!以上面的这种方式,在来做个有意思的程序。

  1. 打开文件,输入一下程序:
  2. name=raw_input("what is your name?")
  3. print "hello "+name+ " !"
  4.  
  5. 保存退出,运行!
  6. root@fnngj-H24X:/hzh/python# python hell.py
  7. what is your name?huhu // 这里要求用户输入自己的名字
  8. hello huhu !

python基础学习笔记(一)的更多相关文章

  1. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  2. python 基础学习笔记(1)

    声明:  本人是在校学生,自学python,也是刚刚开始学习,写博客纯属为了让自己整理知识点和关键内容,当然也希望可以通过我都博客来提醒一些零基础学习python的人们.若有什么不对,请大家及时指出, ...

  3. Python 基础学习笔记(超详细版)

    1.变量 python中变量很简单,不需要指定数据类型,直接使用等号定义就好.python变量里面存的是内存地址,也就是这个值存在内存里面的哪个地方,如果再把这个变量赋值给另一个变量,新的变量通过之前 ...

  4. Python基础学习笔记(十三)异常

    参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-exceptions.html Python用异常对象(excep ...

  5. Python基础学习笔记(十二)文件I/O

    参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-files-io.html ▶ 键盘输入 注意raw_input函 ...

  6. Python基础学习笔记(十一)函数、模块与包

    参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-functions.html 3. http://www.liao ...

  7. Python基础学习笔记(十)日期Calendar和时间Timer

    参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-date-time.html 3. http://www.liao ...

  8. Python基础学习笔记(九)常用数据类型转换函数

    参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-variable-types.html 3. http://www ...

  9. Python基础学习笔记(八)常用字典内置函数和方法

    参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-dictionary.html 3. http://www.lia ...

  10. Python基础学习笔记(七)常用元组内置函数

    参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-tuples.html 3. http://www.liaoxue ...

随机推荐

  1. 理解inode 以及 软链接和硬链接概念区分

    inode简单理解 本文来源自网络文章,并针对文章内容加以批注和修改.希望能帮到你! 一. 磁盘设备 说到inode,首先必须要提及下<操作系统>中磁盘存储器的管理一节.磁盘设备是一种相当 ...

  2. Debian-Linux配置网卡网络方法

    Debian不同于centos系统,网卡配置不是在/etc/sysconfig/network-scrip里面,而是在/etc/network/interfaces里面 1.Debian网络配置 配置 ...

  3. PHP PC端支付宝扫码支付

    前面的文章已经描述过在蚂蚁金服开放平台创建应用签约等流程,详见:PHP App端支付宝支付,这里就不多说了,剩下的分两步,第一步是支付前的准备工作,也就是整合支付类文件,我已经整合好可以直接用,代码开 ...

  4. C语言变量定义与数据溢出(初学者)

    1.变量定义的一般形式为:类型说明符.变量名标识符等:例:int a,b,c;(abc为整型变量) 在书写变量定义时应注意以下几点: (1)允许在一个类型说明符后,定义多个相同类型的变量.各变量之间用 ...

  5. 个人技术博客——linux服务器配置以及flask框架

    本次的软件工程实践,我负责我们组后台服务的搭建,我选用了bandwagon的服务器,安装的是Debian GNU/Linux,全程在root用户下操作,后端服务是用python的flask框架,数据库 ...

  6. 【Nginx】什么是Nginx?为什么使用Nginx?

    转文章 一.前言 为毛要用nginx服务器代理,不直接用tomcat 7.0,还做多了一次接请求? 这个是我想问的,公司的新项目是要用Nginx+tomcat7+jdk开发的,用户命名可以直接访问to ...

  7. JQuery获取touchstart,touchmove,touchend坐标

    $('#id').on('touchstart',function(e) { ].pageX; }); JQuery如上. document.getElementById("id" ...

  8. 【转】BASE64编码简介

    BASE64是一种编码方式,通常用于把二进制数据编码为可写的字符形式的数据. 这是一种可逆的编码方式. 编码后的数据是一个字符串,其中包含的字符为:A-Z.a-z.0-9.+./ 共64个字符:26 ...

  9. Android集成讯飞语音、百度语音、阿里语音识别

    项目实践:https://blog.csdn.net/Jsagacity/article/details/80094164 demo下载地址:https://fir.im/jy28 demo源码:ht ...

  10. 卡尔曼滤波跟踪 opencv

    0 卡尔曼OPENCV 预测鼠标位置 卡尔曼滤波不要求信号和噪声都是平稳过程的假设条件.对于每个时刻的系统扰动和观测误差(即噪声),只要对它们的统计性质作某些适当的假定,通过对含有噪声的观测信号进行处 ...