zoukankan      html  css  js  c++  java
  • Python小白的发展之路之Python基础(一)

    Python基础部分1:

    1、Python简介

    2、Python 2 or 3,两者的主要区别

    3、Python解释器

    4、安装Python

    5、第一个Python程序 Hello World

    6、Python3中变量的使用

    7、Python用户输入

    8、逻辑语句if else使用

    9、循环语句for ,while使用


     1、Python简介

     (1)Python的诞生:Python的创始人为Guido van Rossum。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承。于是乎就有了Python,大神就是这么任性蛤~

     (2)Python的应用领域:

       1、云计算: 云计算最火的语言, 典型应用OpenStack

       2、WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django

             3、科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas

             4、系统运维: 运维人员必备语言(不会开发的运维迟早被淘汰,这句话说的一点不假)

             5、金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测

             6、图形GUI: PyQT, WxPython,TkInter

    (3)Python的优缺点

      优点:

       简洁易懂:Python语句比起c语言、java等语言较为通俗易懂,比较适合初学者学习

       高层语言:当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节

       可移植性:由于它的开源本质,Python已经被移植在许多平台上

       面向对象:Python既支持面向过程的编程也支持面向对象的编程

       可扩展性:如果需要一段关键代码运行得更快或者希望某些算法不公开,可以把的部分程序用C或C++编写,然后在的Python程序中使用它们。

       可嵌入性:可以把Python嵌入你的C/C++程序,从而向程序用户提供脚本功能  

      缺点:

       运行速度较慢:由于Python是高级解释性语言所以在运行的速度上不如C和java  

       强制缩进:Python是以缩进4个字符的形式来实现其功能的,从其他语言转过来学习python的朋友可能会不习惯,但是这可能也是Python的魅力吧,相信学习到后面会习惯上这种逻辑

        代码公开:What?我现在不认为这是缺点了,现在不是都倡导开源化的互联网环境吗,其实也无伤大雅啦


    2、Python2 or Python3

      很多人纠结是学python2还是python3呢,其实,选一个先学习然后了解两者的不同剩下的就迎刃而解了。就像在学习linux的时候很多人纠结centos6和7,其实差别并没有多少的,弄懂一个,然后了解他们之间的差异,另一个不就自然而然的懂啦

      Python3默认使用utf-8,就可以不用编码问题烦恼了。

      在Python3中有一些语法发生了改变,这些在日后专门写一篇博客。


    3、Python解释器

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

    由于整个Python语言从规范到解释器都是开源的,所以理论上,只要水平够高,任何人都可以编写Python解释器来执行Python代码(当然难度很大)。事实上,确实存在多种Python解释器。

    CPython

    当我们从Python官方网站下载并安装好Python 2.7后,我们就直接获得了一个官方版本的解释器: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的字节码。


    4、Python安装

      windows

        1、下载安装包
          https://www.python.org/downloads/
        2、安装
          默认安装路径:C:python27
        3、配置环境变量
          【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】
          如:原来的值;C:python27,切记前面有分号

      linux、mac自带python解释器,可直接使用,也可官网下载最新版本安装使用


    5、第一个python程序,hello world(仪式感一定要有)

       1 print("hello world") 


    6、Python中的变量

      变量的命名规则:(1)变量名只能是字母、数字、下划线的任意组合

              (2)变量的首字符不能为数字

              (3)变量名不能为一下字符:and as assert break class continue def del elif else expect exec finally for from global if import in is lambda not or pass print ralse return try while with yield


    7、用户输入

        

    #!/usr/bin/env python  
    #_*_coding:utf-8_*_ 
    
    #name = raw_input("What is your name?") #only on python 2.x 
    name = input("What is your name?") 
    print("Hello " + name )

    在输入密码时,如果需要设置为可见,需要调用getpass模块来实现该功能

    #!/usr/bin/env python 
    # -*- coding: utf-8 -*- 
       
    import getpass  #导入getpass模块
       
    # 将用户输入的内容赋值给 name 变量 
    passwd = getpass.getpass("请输入您的密码:") 
       
    # 打印输入的内容 
    print(passwd)

    8、逻辑语句if else使用

    # 提示输入用户名和密码 
       
    # 验证用户名和密码 
    #     如果错误,则输出用户名或密码错误 
    #     如果成功,则输出 欢迎,XXX! 
      
      
    #!/usr/bin/env python 
    # -*- coding: encoding -*- 
       
    import getpass 
       
       
    name = raw_input('请输入用户名:') 
    pwd = getpass.getpass('请输入密码:') 
       
    if name == "chen" and pwd == "123": 
        print("欢迎,chen!") 
    else: 
        print("用户名和密码错误")

    if...elif...else使用:
     猜年龄程序:

    #!/usr/bin/env python 
    # -*- coding: utf-8 -*- 
      
      
    my_age = 20
      
    user_input = int(input("input your guess num:")) #此处使用int将其转为整形 
      
    if user_input == my_age: 
        print("Congratulations,!you got it !") 
    elif user_input < my_age: 
        print("think bigger!") 
    else: 
        print("think smaller!")

    9、循环语句for while使用

    for循环:

    循环输出0-9

    #_*_coding:utf-8_*_ 
    __author__ = 'Chen'
      
      
    for i in range(10): 
        print("what:", i )

    输出:

    what: 0
    what: 1
    what: 2
    what: 3
    what: 4
    what: 5
    what: 6
    what: 7
    what: 8
    what: 9

    continue和break的区别

    continue:跳过本次循环并且继续下面的循环

    break:跳出整个循环,循环结束

    示例1:跳过i=5的循环,继续下面的循环

    for i in range(10): 
        if i==5: 
            continue #跳出本次循环执行下一次循环 
        print("loop:", i )

    示例2:输入到5的时候结束循环

    for i in range(10): 
        if i>5: 
            break #跳出整个循环
        print("loop:", i )
  • 相关阅读:
    OpenCV——花环生成函数
    机器学习 Regularization and model selection
    OpenCV——PS 滤镜算法之极坐标变换到平面坐标
    OpenCV——PS 滤镜算法之平面坐标到极坐标的变换
    PS 滤镜— — 万花筒效果
    OpenCV——高斯模糊与毛玻璃特效
    PS 滤镜— —扇形warp
    OpenCV——旋转模糊
    使用zlib实现gzip格式数据的压缩和解压
    PS 滤镜— —水波效果
  • 原文地址:https://www.cnblogs.com/czalinux/p/6149350.html
Copyright © 2011-2022 走看看