zoukankan      html  css  js  c++  java
  • 我的Python升级打怪之路【一】:python的简单认识

    Python的简介

    Python与其他语言的对比:

      C和Python、Java、C#

        C语言:代码直接编译成了机器码,在处理器上直接执行

        Python、Java、C#:编译得到相应的字节码,虚拟机执行字节码并转换成机器码再在处理器上执行。

      Python和C       补充:Python是由C开发而来

        对于使用:Python的类库齐全且使用简洁,Python 10行实现的代码,别的语言需要数十行

        对于速度:C语言直接编译成机器码,速度远远大于Python

      Python和C#、Java

        对于使用:Linux原装Python,而其他的没有

        对于速度:Python在执行效率上稍逊一筹

    Python的种类:

      Cpython

        python的官方版本,使用C语言编写,使用广泛,Cpython会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在python虚拟机上

      Jython

        Python的java实现,会将Python代码动态编译成java字节码,运行在jvm上

      Iron Python

        Python的C#实现,IronPython会将Python代码编译成C#字节码,运行在CLR上。

      PyPy

        它的目的使执行速度,采用JIT技术,对Python代码进行一个动态的编译,在Python的基础上对Python的字节码进一步处理,从而提升执行速度

      IPython

        居于CPython之上的一个交互式的编译器,内核其实是调用了IE

    Python的环境

    1.安装Python

    Windows:安装包,配置环境变量

    Linux:自带有Python环境

    2.更新Python

    Windows:卸载重装即可

    Linux: 

     1 查看默认Python版本
     2 python -V
     3   
     4 1、安装gcc,用于编译Python源码
     5     yum install gcc
     6 2、下载源码包,https://www.python.org/ftp/python/
     7 3、解压并进入源码文件
     8 4、编译安装
     9     ./configure
    10     make all
    11     make install
    12 5、查看版本
    13     /usr/local/bin/python2.7 -V
    14 6、修改默认Python版本
    15     mv /usr/bin/python /usr/bin/python2.6
    16     ln -s /usr/local/bin/python2.7 /usr/bin/python
    17 7、防止yum执行异常,修改yum使用的Python版本
    18     vi /usr/bin/yum
    19     将头部 #!/usr/bin/python 修改为 #!/usr/bin/python2.6

    Python入门

    一:你好,Python

    1 1.创建一个.py文件
    2 2.输入
    3   print("Hello Python")
    4 3.保存退出

    打开CMD,通过以下方式执行Python文件(已经配置好了环境变量)

      python .py文件

    补充一点:

    python2中可以使用:

    print "Hello Python"

    而Python3不行

    二:解释器

    以上执行时,python 就是指定了这个py文件是要由python解释器来执行的

    在Linux中,如果想要想shell脚本一样执行python脚本,就需要加入一些头部信息

    1 #!/usr/bin/env python
    2 #其实就是Python解释器的具体路径,也就是在这里指定了python解释器
    3 
    4 print("Hello World")

    三:编码

    在python2中如果你的代码中存在中文,而且没有指定编码,则会报错

    Python2解释器在加载py文件的时候,会对内容进行默认的编码(ascii),ASCII是不支持中文的

    所以我们要使用UTF-8编码:

    1 #!/usr/bin/env python 
    2 # -*- coding:utf-8 -*-
    3 
    4 print("你好,Python")

    另外说一点:python3好像是默认编码为unicode,所以不需要担心中文问题

    四:Python代码的注释

      单行注释  # 注释的内容

      多行注释 ”“” 注释的内容 “”“

    五:执行Python时传入参数

    Python有大量的模块,从而使得Python的开发非常的方便简洁。类模块有三种:

    • Python内部提供的模块
    • 开源的一些模块
    • 自己开发的模块

    Python内部提供的模块中有一个sys模块,其中sys.argv可以用来获取执行Python执行脚本时传入的参数

    1 import sys
    2 
    3 print(sys.argv)

    六:pyc文件

    在执行Python代码时,如果导入了其他的.py文件,那么执行过程中就会生成一个与其同名的.pyc文件,该文件就是Python解释器编译后产生的字节码

    同时,如果再次调用这个.py文件,当它发现有pyc文件时,就会去调用这个pyc文件,而非源py文件,所以说,Python的模块本身就是单例

    七:变量

    1.声明变量

    1 name  = "nullnull"

    最简单的一个声明变量,变量名为name,变量name的值为”nullnull“

    一个名为name的变量名指向了一个存着值为”nullnull“的内存空间

    另外提一点:其实变量名是可以使用中文的,但是开发中没有人会这么做。

     2.变量的定义规则:

    • 变量名字母、数字或下划线的组合
    • 变量名的第一个字符不能是数字
    • 一些Python内置的关键字不能作为变量名

    另外提一点:有个叫做PEP8的对Python编码进行了统一的规范

     3.变量的赋值

    1 name1 = "nullnull"
    2 name2 = "fullfull"

     

    name1 = "nullnull"
    name2 = name1

    这也说明了python的引用类型,这里你可以先不用了解。

    八:输入

    #python2
    name1 = raw_input("请输入你的...")
    
    #Python3
    name2 = input("请输入你的...")

    另外补充一点:如果你输入的是密码,想要想Linux一样输入时不可见就要用到getpass模块

    1 import getpass
    2 
    3 pwd = getpass.getpass("请输入密码:")
    4 
    5 print(pwd)

    九:流程控制和代码的缩进

    流程控制语句:

      if...elif....else

      for循环

      while....break/continue

     if else语句判断语句

    1 if True:
    2     print("这是真的")
    3 else:
    4     print("虽然他永远不会执行吧")

    if elif elif    多条件判断语句 

    while循环语句

    1 while True:
    2     print("如果真的就会执行啦,根本停不下来")

    for循环

    1 for i in ['1','2','3']
    2     print("这里是列表中的每一个元素啦" + i)

    break 用于while或for的代码块中,用于跳出循环

    continue类似于break,但却是跳过本次循环

  • 相关阅读:
    OAuth认证介绍及腾讯微博OAuth认证示例
    Android PopupWindow介绍及实现菜单效果
    Android 输入法键盘和activity页面遮挡问题解决
    eclipse中android项目的编译过程分析
    Android Tween动画之RotateAnimation实现图片不停旋转
    eclipse 文件同步插件
    关于移动Web应用程序开发 HTML5、高性能JavaScript篇、Css的几篇较好博客
    Android 记录和恢复ListView滚动的位置的三种方法
    Apache的功能模块
    如何防止自己网站的图片被其他网站所盗用,从而导致自己网站流量的损失【apache篇】
  • 原文地址:https://www.cnblogs.com/smiling-crying/p/9201825.html
Copyright © 2011-2022 走看看