• Python——初识Python


    本篇主要内容:

    • Python的特点

    • Python的种类

    • Python的编码

    • Python的安装环境推荐

    • Python的基础用法:输入输出,算术运算符,逻辑运算符,基本程序结构语法

      我为什么要学Python呢?很简单,Python实在是太强大了。它不需要很专业的数据结构、算法知识,需要用的路别人都铺好了,并且铺的特别平正,我们需要做的就是去调包即可,可以节省大量的时间。但是正是由于别人都把工作安排的明明白白,导致很多学Python的人到头来只会搬砖,所以我要清楚,语言只是工具,不管去用来做什么,都要懂得其中之理。

      Python的特点:即快又慢,快在它开发速度快,搭建一个网站只需要几行代码,做大量数据的数据也只是需要几行代码,开发者在很短的时间内就能做出自己想做的产品。慢在它的性能,执行同样的功能,C需要1秒,Python就至少需要10秒,就是因为Python的高度封装性,可能只是一行打码,但其底层会花费大量的时间。但是随着现在CPU执行速度的快速发展,Python的劣势越来越低,C的0.01s和Python的0.1s在我们看来没有任何区别,都是瞬间出结果。所以Python这几年的使用率一路飙升,已经超过了C++位居第三。

      Python的种类:目前用的最多的Python是用C语言写的,也叫CPython,其任何操作都是由Python解释器解释为C代码再执行的,效率也比较高。除此之外,还有JavaPython,C#Python,PyPy,他们的底层分别是Java,C#,Python,Pypy是对Python的再度封装,使其更加简洁,但是使用率不高。这三种Python几乎没人用,因为Java,C#也都是以C为底层的。。。直接用CPython就行啦。除非一些限制场景,比如Python要跟Java交互,这样的话用JavaPython会更好。大概就是下面这幅图的关系。

    知道为什么大学里面第一个编程基础课是C了吧。他几乎是所有编程语言的祖宗。简单而又底层。所以如果想学好编程语言,还是要把C学踏实。学其他语言的时候才更容易理解,更容易找到错误所在。

      Python的编码:Python3的py文件都是以utf-8编码的。Python2则不是,需要加上#  -*- coding:utf-8 -*-。各种编码关系如下图所示。

      出现utf-8就是因为Unicode在处理字母时,也会编码为16位,这样的话高8位就全为0,反而浪费很多空间,所以utf-8就把字母编码为8位(1字节),把汉字编码为16位。其他国家语言的可能还有24位的。

      Python安装:

      强烈建议安装anoconda!!!他是Pyhon的开源环境管理包,安装了它,就有了Python,同时也会有Numpy,matplotlib这种非常常用的库,还会附带的有jupyter notebook,写Python的利器。具体安装方法网上多的是,只需要注意一定要勾选把路径配置到环境变量就行。

      IDE的话,上面说的jupyter notebook很不错,还有更专业的Pycharm(网上各种破解方法)。这两个就完全够了,Pycharm属于重量级的PythonIDE,比较吃内存,但他的功能也是十分的强大,想写个小项目,大项目完全没问题。jupyter notebook支持分段运行程序,在日常的学习中非常有用。

    Python基础:

    1、输入输出

    a=input("Input something")

     这一句就相当于C里面的scanf,C++里面cin了,不过Python的input把所有输入的都储存为字符串了。

    其实这个输入并没什么卵用。知道就行了。

    print("Hello World!")

    惊不惊喜,意不意外,一个Hello World!程序就这样写好了。。。。哈哈哈

    源码里面是这样的。。。(pass是什么鬼,就不能写写是怎么实现的么,直接Pass了,应该在其他地方)这个

     这个API

    *args 表示可以同时输出多个内容,

    sep=' ',表示输出多个内容时中间用空格隔开

    end=' ',表示输出的内容以换行符为标志换行。
    file,表示可以打印文件流。没用过这个

    a=10
    b=20
    c="Hello World!"
    print(a,b,c,"
    Albert!",sep=',,,',end='
    ')

    打印出来就是

    10,,,20,,,Hello World!,,,
    Albert!

    有时候想格式化打印还是挺有意思的。

    2、算数运算符

    对于数字的+ - * /就不用多说了。

    %表示求余,

    /表示除(不用处理整型浮点型问题,/会自动处理)

    //表示求商,就相当于将除的结果取整,得到的还是整数。

    **表示乘方运算。相当于数学符号^

    注意Python可以直接用+ -  *对字符串进行操作。

    3、逻辑运算符

    Python里与是and,或是or,非是not。这个跟C里面就不一样的,当成我就用混过,

    不过经过试验,与可以用&,或可以用|,非不可以用!。

    还有一个非常好用的in

    a in b会返回a是否在b里面,这个以后在列表,字典,元组,字符串中很好用。判断不在就是a not in b。

    这样就不用自己去写遍历,或者二分查找算法了。

    4、程序结构

    当然是顺序,分支,循环啦。

    分支:

    a=97
    b=99
    if a>b:
        print("a大于b")
    elif a==b:
        print("a等于b")
    else:
        print("a小于b")

    注意:Python里面不{}表示代码块,而是用的不同的缩进。同样的缩进表示在同一个代码块里面,而不用大括号括住了。

             注意冒号:,这个也跟其他编程语言不一样。刚开始我就有点没反应过来。

    循环

    while 1==1:
        print("I LOVE YOU")

    注意循环条件,冒号,缩进就行(缩进用tab键)

    a=[1,2,3,4,5,6]
    for i in a:
        print(i)

    最常用的还是这种,遍历所有元素。也不用什么i++,他会自己进行迭代。

    输出

    1
    2
    3
    4
    5
    6

    他能遍历很多数据类型。

    a="I LOVE YOU"
    for i in a:
        print(i)
    
    
    输出:
    I
     
    L
    O
    V
    E
     
    Y
    O
    U

    今天这个就复习到这里。明天写数据类型。







  • 相关阅读:
    Linux下的压缩zip,解压缩unzip命令具体解释及实例
    编程验证哥德巴赫猜想
    HDU 4735 Little Wish~ lyrical step~(DLX , 反复覆盖)
    The 2013 South America/Brazil Regional Contest 题解
    【 D3.js 高级系列 — 2.0 】 捆图
    怎么让百度收录站点的图片呢?
    ios-UI1
    oc85--利用宏定义简化单例
    oc84--单利
    oc83--自定义类实现copy方法
  • 原文地址:https://www.cnblogs.com/albert-yzp/p/10054333.html
Copyright © 2020-2023  润新知