python基础教程(一)
之所以选择py交易有以下几点:1、python是胶水语言(跨平台),2、python无所不能(除了底层),3、python编写方便(notepad++等文本编辑器就能搞事情),4、渗透方面很多脚本都是py编写的(而且google的网站也是py)
安装与运行交互式解释器
在绝大多数linux和 UNIX系统安装中(包括Mac OS X),Python的解释器就已经存在了。我们可以在提示符下输入python命令进行验证(作者环境ubuntu)
fnngj@fnngj-H24X:~$ python
Python 2.7.3 (default, Sep 26 2012, 21:53:58)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
Ok ! 如果敲入python命令出现以上信息时,表明我们已经安装了python 环境。
如果没有安装,在ubuntu /Debin linux ,那么可以用下面的命令来安装Python:
$ apt-get install python
如果是window 下的安装,以及linux 下下载源码包的安装,相信此类人问题很容易找到,这里就不具体讲解了。相信比第一次配置java环境要简单的多。
输入一下命令,看其是否可以正常运行。
>>> print "hello,world!"
hello,world!
注意:如果要推出交互式解释器,可以ctrl+D
算法是什么?
在认真编程之前,先来说说什么是计算机程序设计,简单地说,计算机程序设计就是告诉计算机做什么事。计算机可以做很多事,但它不会自己思考,需要我们告诉它具体细节,需要用计算机能够理解的语言将算法告诉它。“算法”不过是“程序”或者“食谱”的另一种悦耳的说法----详细描述如何做某事。
小葱拌豆腐、豆腐、
首先,拿一些豆腐;(声明一个变量)
然后加入小葱在豆腐上。(两个变量相加)
如果需要特殊辣味的豆腐。(考虑特定的条件)
煮熟---每10分钟检查一次。(重复运行此指令)
食谱和算法都包含一些要素(对象、物品),以及指令(语句)。“小葱”
和“ 豆腐” 就是要素。指令包括“加入小葱在豆腐上”
等。
数字和表达式:
交互式python解释器可以当强大的计算器使用

>>> 1-2
-1
>>> 1+2
3
>>> 32784*13
426192
>>> 1/2

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

>>> 6 % 3
0
>>> 6 / 3
2
>>> 6 % 3
0
>>> 7 / 3
2
>>> 7 % 3
1
>>> 13 % 9
4
>>> 0.75 % 0.5
0.25

看明白整除(/)与取余(%)的区别了吧。
6 / 3 刚好被2整除,所以余数(%)是0 , 13 / 9 只能带得到1个9 ,余数就是4 。
下面再试试“ **
” 幂运算(乘方)符

>>> 2*2*2
8
>>> 2**3
8
>>> 2**6
64
>>> -3**2
-9
>>> (-3)**2
9

2的3次方可以用乘方符(**)表示,这样就相当方便。
乘方符的比取反(一元减运算符)的优先级高,所以-3**2 等同于-(3**2),如果想计算(-3)**2 ,就需要显式说明。
长整数
python可以处理非常大的数
>>> 100000000000000000000000
100000000000000000000000L >>> 100000000000000000000000L
100000000000000000000000L
普通整数在2 147 483 647 至 -2 147 483 647 之间,超出可以用长整形表示(L) ,我们也可以自己把整数转换成长整型(输入时在末尾加“L”)
变量
这个和其他编程语言没有任何不同,如果你从没接触过程序,相信你也很容易理解。

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

把3 赋值给 x ,那么x 变量现在的值就是3, x 乘以 2 结果是6 ,我又把5 赋值给了 x ,那么与2相乘的结果肯定是10了。
定义变量规则:不能以数字开头,可以包含字母、数字和下划线。
语句
实际上最开始我们已经讲了语句
print
就是打印输出语句。
>>> 2*2
4 >>> print 2*2
4
虽然结果一样,上面的是表达式,下面的是语句。
获取用户输入
有使用程序运行的过程需要用户输入,根据用户输入的内容继续执行。
>>> input("输入表达式:")
输入表达式:2*2
4
程序的第二行等待用户输入,2*2 是由用户随便输入的。下面看个更有意思点的。

>>> x=input("x:")
x:15
>>> y=input("y:")
y:32
>>> print x*y
480

哎~!别傻看了,和我一起敲才有意思呢! 我保证下面的你看不懂!
>>> if 1==2 : print 'one equals two'
...
>>> if 1==1 : print 'one equals one'
...
one equals one
算了,告诉你吧,如果1等于(==)2,条件是假(就是不成立),print 'one equals two' 将不被执行。
如果1等于(==)1,条件是真(成立),print 'one equals ' 将被执行。
函数
前面介绍过使用幂运算符(**)来计算乘方。事实上,可以用函数来代替运算符,这个函数就是pow
:
>>> 2**3
8 >>> pow(2,3)
8
函数就像可以用来实现特定功能的小程序一样。python的很多函数都做很奇妙的事情。我们也可以自定义函数。因此,我们通常把pow等系统提供的函数称为 内建函数。

>>> 10+pow(2, 3*5)/3.0
10932.666666666666 >>> abs(-10)
10
>>> 18/13
1
>>> round(18.4/13.7)
1.0

我们当热可以使用函数调用和运算符创建更复杂的表达式; abs()函数可以得到数人绝对值,round函数则会把浮点数四舍五入为最接近的整数值。
模块
可以把模块想象成导入到python以增强其功能的扩展。需要使用特殊人命令import来导入模块。
>>> import math
>>> math.floor(32.9)
32.0
>>> int(math.floor(32.9))
32
floor 函数的功能是取整。因为floor()函数属于math模块,所以在使用之前要先导入模块(import math),然后按照(模块.函数)的格式使用这个模块的函数。
如果想把32.9转换为整数(32)而不是浮点数(32.0),可以使用int函数。
在确定自己不会导入多个同名函数(从不同模块导入)的情况下,你可能不希望在每次调用函数的时候,都要写模块的名字。那么,可以使用import命令的另外一种形式:
>>> from math import sqrt
>>> sqrt(9)
3.0
>>> sqrt(8)
2.8284271247461903
sqrt()函数用于计算一个数的平方根。
保存并执行程序
本人在ubuntu
下进程学习,一个python命令就进入了交互式解释器。交互式解释器是python的强项之一,它让实时检验解决方案并且体验这门语言成为了现实。但是,在交互式解释器里面输入的一切都会在它退出的时候丢失。我们真正想做的事情是编写自己和他人都能运行的程序。

下面我们创建一个文件
root@fnngj-H24X:/hzh/python# touch hell.py
root@fnngj-H24X:/hzh/python# ls
hell.py
root@fnngj-H24X:/hzh/python# vi hell.py
输入:
print “hello,world!” 保存退出。运行
root@fnngj-H24X:/hzh/python# python hell.py
hello,world!

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

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

python的入门教程推荐《python 基础教程(第二版)》,零基础的话推荐《零基础学python》,进阶推荐《python核心编程》,找不到资源的小伙伴可私信我!
python基础教程(一)的更多相关文章
- 改写《python基础教程》中的一个例子
一.前言 初学python,看<python基础教程>,第20章实现了将文本转化成html的功能.由于本人之前有DIY一个markdown转html的算法,所以对这个例子有兴趣.可仔细一看 ...
- .Net程序员之Python基础教程学习----列表和元组 [First Day]
一. 通用序列操作: 其实对于列表,元组 都属于序列化数据,可以通过下表来访问的.下面就来看看序列的基本操作吧. 1.1 索引: 序列中的所有元素的下标是从0开始递增的. 如果索引的长度的是N,那么所 ...
- python基础教程笔记—即时标记(详解)
最近一直在学习python,语法部分差不多看完了,想写一写python基础教程后面的第一个项目.因为我在网上看到的别人的博客讲解都并不是特别详细,仅仅是贴一下代码,书上内容照搬一下,对于当时刚学习py ...
- Python基础教程2上的一处打印缺陷导致的代码不完整#1
#1对代码的完善的 出现打印代码处缺陷截图: 图片上可以看到,定义的request根本没有定义它就有了.这个是未定义的,会报错的,这本书印刷问题,这个就是个坑,我也是才发现.花了点时间脱坑. 现在发完 ...
- python基础教程(第二版)
开始学习python,根据Python基础教程,把里面相关的基础章节写成对应的.py文件 下面是github上的链接 python基础第1章基础 python基础第2章序列和元组 python基础第3 ...
- python基础教程1:入门基础知识
写在系列前,一点感悟 没有梳理总结的知识毫无价值,只有系统地认真梳理了才能形成自己的知识框架,否则总是陷入断片儿似的学习-遗忘循环中. 学习方法真的比刻苦"傻学"重要多了,而最重要 ...
- Python基础教程-第3版(文字版) 超清文字-非扫描版 [免积分、免登录]
此处免费下载,无需账号,无需登录,无需积分.收集自互联网,侵权通知删除. 点击下载:Python基础教程-第3版 备用下载:Python基础教程-第3版
- Python基础教程学习笔记:第一章 基础知识
Python基础教程 第二版 学习笔记 1.python的每一个语句的后面可以添加分号也可以不添加分号:在一行有多条语句的时候,必须使用分号加以区分 2.查看Python版本号,在Dos窗口中输入“p ...
- 【Python】Python基础教程系列目录
Python是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. 在现在的工作及开发当中,Python的使用越来越广泛,为了方便大家的学习,Linux大学 特推出了 <Python基 ...
随机推荐
- (转)sizeof
数据类型的大小(即所占字节数)以及能够表示的数据范围是与编译器和硬件平台有关的."float.h"头文件(如vc6.0,在include目录下)通常定义了基本数据类型能够表示的数据 ...
- docker的简单应用(总结笔记)
sudo docker pull ubuntu /*下载Ubuntu最新镜像*/sudo docker pull ubuntu:14.04 /*下载Ubuntu14.04版镜像*/sudo docke ...
- 如何使用Androidstudio创建一个新项目
首先打开AS,然后 选择第一个选项Start a new Android Studio project 填写包名和项目名,点击next 选择项目类型,点击next 选择UI类型(都是死丢丢帮你生成的) ...
- sql 日记
--4.选择雇用时间在1998-02-01到1998-05-01之间的员工姓名,job_id和雇用时间select last_name,job_id,hire_datefrom employeeswh ...
- Springboot+redis 整合
运行环境: JDK1.7. SpringBoot1.4.7 redis3.0.4 1.生成Springboot项目,分别添加web,redis依赖,具体的maven依赖如下 <dependenc ...
- angular学习(七)-- Service
1.7 服务:Service 如果做过后台开发,那么对 Angular 中的服务就好理解多了. 在 Angular 中,服务的概念和后台的服务概念基本是一样的,差别只是在于技术细节. 服务是对公共代码 ...
- Linux操作系统-命令-aptitude install unzip
如果linux系统没有自带unzip,请执行aptitude install unzip以安装. 使用到这条Linux命令的场景是: 当我把Jmeter的压缩包(xxx.zip)拷贝到远程的Linux ...
- 【HOSTS相关】前端提供测试模板地址
在测试接口的时候,首先需要绑定HOSTS,这个文件的位置在这个目录的下面:C:\WINDOWS\system32\drivers\etc,打开hosts文件的方式选择"记事本"就可 ...
- Linux下使Shell 命令脱离终端在后台运行
--Linux下使Shell 命令脱离终端在后台运行------------------------------------2014/02/14你是否遇到过这样的情况:从终端软件登录远程的Linux主 ...
- [Oracle Support]PeopleSoft Support中Fixes,Patches,Bundles,Packs?
在Oracle Support中经常能看到下面术语,一起学习下. Fixes - 最小单元的维护,修复通常会解决一个特定的问题,例如:oracle可能会给您一个解决生产问题的解决方案. Patches ...