从这周开始我就正式学习Python 语言了。以后每周都会有一篇有关于学习Python的见闻与大家分享!

Python的安装

学习的第一步首先要有一个运行的环境。所以接下来介绍一下安装的步骤。

通过Python的官网可以看到Python是跨平台的,它可以运行在Windows、Mac和各种Linux/Unix系统上。在Windows上写Python程序,放到Linux上也是能够运行的。

 

要提醒大家的是 Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的。在未来py3 会是趋势但是目前py2的程序还是大量存在

因此我在两个系统平台安装了不同版本的Python系统。

Windows上安装Python 

1 根据你windows系统的配置选择32位或者64位的安装包安装即可比如我就是是下载的2.7.11版本的64位安装包

2 讲Python的安装目录添加到PATH(在Python3.5可以在安装过程中选择添加到PATH)

在win10 里是这样的


Linux上安装Python

在ubuntu 16.04 中安装

默认情况下ubuntu 16.04下已经安装了Python 2.7 和Python 3.5

只要选择执行的环境即可如果没安装可以通过在BASH输入以下命令完成

sudo add-apt-repository ppa:fkrull/deadsnakes
sudo apt-get update
sudo apt-get install python3.

在centos 6.7 中安装

centos 6.7中默认安装的版本的2.6.6 下面将它更新到2.7.11版本

yum install gcc
wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tar.xz
xz -d Python-2.7..tar.xz
tar -xvf Python-2.7..tar
编译安装
./configure
make all
makeinstall
查看版本
/usr/local/bin/python2. -V
修改默认Python版本
mv /usr/bin/python /usr/bin/python2.
ln -s /usr/local/bin/python2. /usr/bin/python
防止yum执行异常,修改yum使用的Python版本
vi /usr/bin/yum
将头部 #!/usr/bin/python 修改为 #!/usr/bin/python2.

Python 解释器的版本

我们编写Python代码时,我们得到的是一个包含Python代码的以.py为扩展名的文本文件。要运行代码,就需要Python解释器去执行.py文件。

CPython

当我们从Python官方网站下载并安装好Python 3.5后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。

CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行。

IPython

IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。

CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。

PyPy

PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。

绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点

Jython

Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。

IronPython

IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

第一个Python 程序

学习语言的第一个程序必然是HelloWorld了这里也不例在目录下创建一个文件名为helloworld.py 文件文件内容如下

1#!/usr/bin/env python
2print"hello,world"

ps:#!/usr/bin/env python这一行会告诉系统要运行的Python解释器是什么

ps2:print "hello,world" 在Python3 会报错  需要改成print("hello,world") 但2.7.11也兼容print()

ps3:需要赋予执行权限

Python的内容编码

在Python2.x 版本内默认的编码格式为ASCII码,因此不会识别中文编码。所以想要在2.x版本的Python中使用中文就必须在程序开始前再加入一行。Python3不存在这样的问题

#!/usr/bin/env python
# -*- coding: utf-8 -*-

注释格式

在Python里可以使用在想要注释的一行前面加# 注释  当想要注释多行的时候可以使用"""    """ 来范围注释。

#!/usr/bin/env python
#-*- coding: utf-8 -*-
# 我是单行注释
#import time
print("hellow,world") #下面的多行注释
"""
num = 0
while num <= 100:
if num%2 != 0:
print(num)
num +=1
print("end")
"""

变量

1在Python中变量的声明不需要加数据类型

2变量的命名:

  1. 变量名只能是字母、数字或下划线的任意组合
  2. 变量名的第一个字符不能是数字
  3. 以下关键字不能声明为变量名
  • ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif',

'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 

'in', 'is', 'lambda', 'not','or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']

#!/usr/bin/env python
#-*- coding: utf-8 -*-
# 声明变量
#import time name = "lzx"
age = 22
grilorboy=True
age2=22
name2 = "lzx"
print id(age)
print id(age2)
print id(name)
print id(age2)

以下为程序的执行结果:


小结:

  id() 方法可以获取一个变量的内存地址,由程序的运行结果可以看出变量的赋值实质上是

  1. 在内存中创建了一个字符串
  2. 在内存中创建了一个名为name的变量,并把它指向'lzx'。

获取输入内容

在Python中获取用户输入可以通过raw_input (py2) input(py3)中获取用户的输入内容

#!/usr/bin/env python
#-*- coding: utf-8 -*-
#测试输入内容
import getpass
userna = input("UserName")
passwd = getpass.getpass("password")
print userna
print passwd

想要输入的密码不可见可以通过getpass模块中的gatpass方法实现

条件判断

Python用if 做条件判断 格式是

if 判断的条件 :

  满足条件1执行语句

else:

  满足条件2的执行语句

需要注意的是 1 必须要有: 2  当满足条件1时候if就不在执行下面的判断

age = 3
if age >= 18:
print('your age is', age)
print('adult')
else:
print('your age is', age)
print('teenager')

也可以使用if  elif的格式

if <条件判断1>:
<执行1>
elif <条件判断2>:
<执行2>
elif <条件判断3>:
<执行3>
else:
<执行4>

while循环

while循环的使用是

whil 条件:

  循环执行的代码

同样也要注意不要丢失 :

2 break  当有break 出现在循环内时候,立即停止循环执行循环下面的代码

3 continue 用于退出当前循环,继续下一次循环

Python 学习日记(第二周)的更多相关文章

  1. python学习笔记第二周

    目录 一.基础概念 1.模块 1)os模块 2)sys模块 2.pyc文件 3.数据类型 1)数字 2)布尔值 3)字符串 4.数据运算 5.运算符 6.赋值运算 7.逻辑运算 8.成员运算 9.身份 ...

  2. Python 学习日记(第三周)

    知识回顾 在上一周的学习里,我学习了一些学习Python的基础知识下面先简短的回顾一些: 1Python的版本和和安装 Python的版本主要有2.x和3.x两个版本这两个版本在语法等方面有一定的区别 ...

  3. Python学习日记 --day2

    Python学习日记 --day2 1.格式化输出:% s d  (%为占位符 s为字符串类型 d为数字类型) name = input('请输入姓名') age = int(input('请输入年龄 ...

  4. python学习日记(基础数据类型及其方法01)

    数字 int 主要是用于计算的,常用的方法有一种 #既十进制数值用二进制表示时,最少使用的位数i = 3#3的ASCII为:0000 0011,即两位 s = i.bit_length() print ...

  5. 菜鸟Python学习笔记第二天:关于Python黑客。

    2016年1月5日 星期四 天气:还好 一直不知道自己为什么要去学Python,其实Python能做到的Java都可以做到,Python有的有点Java也有,而且Java还是必修课,可是就是不愿意去学 ...

  6. Python学习日记(一):拜见小主——Python

    近日学习Python,特将学习过程及一点心得记录于此. 由于之前做过一个Java爬虫的项目,虽然很长时间没有碰过爬虫,但是小郭同学有一颗不死的爬虫心,哈哈.最近在互联网上找一些电影的时候,有很多电影只 ...

  7. 学习Java第二周

    这是学习java的第二周,又这样不知不觉的结束了 上周想要学习的这一周也都做到了,可是觉得进度有些慢了,学习了: 1. 接口和抽象类: 2. 集合与数组: 3. 方法的定义: 4. 递归算法: 5.对 ...

  8. Python的基础学习(第二周)

    模块初始 sys模块 import sys sys.path #打印环境变量 sys.argv#打印该文件路径 #注意:该文件名字不能跟导入模块名字相同 os模块 import os cmd_res ...

  9. Python学习笔记第二十五周(Django补充)

    1.render_to_reponse() 不同于render,render_to_response()不用包含request,直接写template中文件 2.locals() 如果views文件中 ...

随机推荐

  1. 文成小盆友python-num6 -反射 ,常用模块

    本次主要内容: 内容补充 python中的反射 常用模块 一,内容补充: 利用上次说到的递归的方法来实现阶乘. 说明:利用函数递归的方法来实现阶乘如: 1*2*3*4*5*6*7 代码实现如下: de ...

  2. iOS之UISearchBar实时显示结果

    iOS之UISearchBar实时显示结果     UISearchBar 经常是配合UITableView 一起使用的,一般都将UITableView的tableHeaderView属性设置为UIS ...

  3. 创建一个自己的动态HTML-备

    -.获取元素 改变属性 通过id来获取HTML元素 通过标签名找到HTML元素 通过类名来找到HTML元素 举个

  4. Lintcode--008(编辑距离)

    http://www.lintcode.com/en/problem/edit-distance/ 2016-08-29 给出两个单词word1和word2,计算出将word1 转换为word2的最少 ...

  5. CentOS下安装JDK6u21和设置环境变量bin文件

    1.先通过SSH登录到Linux系统中,通过SSH文件管理工具把Linux的JDK安装包上传到/home/acm/JavaTools/JDK目录: 2.进入/home/acm/JavaTools/JD ...

  6. Qt编程之在QGraphics scene中使用图片

    http://stackoverflow.com/questions/5960074/qimage-in-a-qgraphics-scene http://stackoverflow.com/ques ...

  7. TaintDroid:智能手机监控实时隐私信息流跟踪系统(四)

    6      应用程序研究 款流行的应用程序是怎么使用用户敏感数据的.选取的应用程序可以根据相应的权限通过Internet获得各种各样的用户数据.我们研究发现三分之二的这些数据暴露了用户详细的地理位置 ...

  8. 【转】深圳FAE,想拿高薪还缺什么?

    原文网址:http://www.eefocus.com/KTHR_IC/blog/11-05/222793_e04c8.html KT老胡您好! 我07年本科毕业在一家医疗民营企业从事了3年多的嵌入式 ...

  9. 【POJ1338】Ugly Numbers(暴力打表)

    打表大军是一股邪恶势力→_→ #include <iostream> #include <cstring> #include <cstdlib> #include ...

  10. c语言结构体2之变量赋值于字符串

    #include <stdio.h> #include <stdlib.h> struct dangdang { ]; ]; ]; int num; int bugnum; ] ...