从这周开始我就正式学习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. Asp.Net 控件radio 的简单使用

    js: <script type="text/javascript"> function ok() { document.getElementById("tx ...

  2. DataTables自定义筛选器

    /* Custom filtering function which will search data in column four between two values */ $.fn.dataTa ...

  3. Hibernate学习笔记-Hibernate HQL查询

    Session是持久层操作的基础,相当于JDBC中的Connection,通过Session会话来保存.更新.查找数据.session是Hibernate运作的中心,对象的生命周期.事务的管理.数据库 ...

  4. ubuntu12.04安装jdk-7u79-linux-i586.tar.gz

    第一步:下载jdk-7u79-linux-i586.tar.gz 1.wget -c http://download.oracle.com/otn-pub/java/jdk/7/jdk-7-linux ...

  5. hdu 畅通工程再续

    http://acm.hdu.edu.cn/showproblem.php?pid=1875 #include <cstdio> #include <cstring> #inc ...

  6. Verdigris: Qt without moc

    https://woboq.com/blog/verdigris-qt-without-moc.html https://github.com/woboq/verdigris

  7. HDU5044---Tree 树链剖分

    大致题意:add1 u v   u到v路径上所有点的权值加上k,add2  u 到v路径上所有边的权值加上k 最后输出所有点的权值,边的权值..树链剖分预处理然后来个线性O(n)的操作.刚开始用线段树 ...

  8. 【剑指offer】面试题37:两个链表的第一个公共结点

    题目: 输入两个链表,找出它们的第一个公共结点. 思路: 由链表的定义知是单链表.对于单链表,如果两个链表有公共结点,则两个链表必然是像Y型相交.则先计算出各个链表的长度,让长链表的头指针先走多出来的 ...

  9. 齐B小短裙

    女模周蕊微博引关注 火了齐B小短裙毁了干爹[图]_网易新闻中心 齐B小短裙

  10. javascript笔记5之流程控制语句

    /* var box = 100; //单行语句 var age = 20; //另一条单行语句 { //用花括号包含的语句集合,叫做复合语句,单位一个 //一对花括号,表示一个复合语句,处理时候,可 ...