Python开发(一):Python介绍与基础知识

Python开发(一):Python介绍与基础知识

本次内容

一:Python介绍:
二:Python是一门什么语言
三:Python:安装
四:第一个程序 “Hello world”
五:Python 交互器
六:变量:
七:计算机是如何读懂你的指令的
八:注释
九:数据类型
十 :运算
十一:用户交互
十二:流程控制
十三:for 循环
十四:while 循环
十五:三元运算

一:Python介绍:

1:简介

    Python  是一种面向对象的解释型计算机程序设计语言,由荷兰人 吉多·范罗苏姆(Guido van Rossum)于1989年发明,第一个公开发行版发行于1991年。

    最新的TIOBE排行榜占据第四。Python崇尚优美、清晰、简单,是一个优秀并广泛使用的语言。

2:主要领域

          系统运维:系统运维自动化开发最常用语言。

    金融:python开发效率高语言结构清晰简单、库丰富,所以在金融的量化交易、金融分析等,领域占用额极高。

           Web开发:拥有众多优异的 WEB 框架,当前众多网站使用 Python 开发,如豆瓣,YouTube等

           云计算:在开源的云软件中 openstack 就是有 Python 编写的。

二:Python是一门什么语言

1:高级语言与低级语言

    计算机是无法读懂人们写的代码的,只能读懂二进制代码,所以需要将人们写的代码翻译成二进制代码,才能将二进制代码交给CPU来执行。

    高级语言就是基于这种翻译的前提下,从人类逻辑思维角度出发而设计出来的计算机语言,需要经过编译成特定机器上的目标代码才能执行。每一条高级语言需要机器的多条指令才能完成执行

    所以我们可以理解为:距离用户越近的语言就越高级,距离机器越近的语言就越低级

2:编译型与解释型

    编译型语言:将代码翻译成机器能读懂的二进制代码,这个过程称作预编译。在将二进制文件直接交给CPU来执行。

      优点:

        1:编译器只需要进行一次预编译

        2:经过预编译后,程序可以直接交给机器执行,所以运行速度快

        3:经过预编译后,可以脱离编译环境独立运行

      缺点:

        1:编译后如过想要修改就只能对整个模块进行重新编译

        2:由于是事前编译好的所以只能在特定的环境下执行,可移植性差

    解释型语言:只有在程序执行时,才将整套代码分为若干条,逐条的交给解释器,对其进行编译后在交给计算机来执行。

      优点:

        1:兼容性好:代码是由解释器交给机器的,所以只需要有解释器就可以在不同环境中执行。

        2:在需改代码时只需要对修改部分进行操作即可

      缺点:速度慢,每次执行都需要重新解释

3:Python的优缺点

                   优点:1:Python是高级语言,所以不需要考虑底层的细节

                              2:可移植性强:代码无需修改就可以直接在其他平台上运行

                              3:可扩展型:Python兼容多种语言,如C++ 、C 、shell 等

                              4:可嵌入性:可以将 Python 嵌入到 C/C++ 程序中

                   缺点:1:解释性语言,所以速度慢

                              2:代码无法加密

                              3:线程不能利用多CPU

4:选择python2  or  python3

      Python 3发布2008。最后的2.×版本2.7发布了2010年,这个声明为了放弃扩展支持。2.X版本将不会再有新的主要版本更新,Python 2.7 支持到2020年,之后就会放弃这个本版本。3.X正在发展了五年的稳定版本,包括版本3.3在2012,3.4在2014,3.5在2015。这意味着,所有最近的标准库的有些功能只在 python3.x 中使用。

三:Python:安装

      Windows

           1:下载安装包:https://www.python.org/downloads/

           2:安装默认安装即可,但是在安装时需要记住安装路径,默认为 C:python27

           3:设置环境变量:

    右键计算机 → 属性 → 高级设置  → 高级 → 环境变量  → 在下方框中找到 Path 双击打开 → 用分号 " ; " 进行分各 →写入 C:python27 → 点击确定 退出

        

      //* 注意:1:在编辑系统变量时是使用 “  ;  ” 分号进行分割

                       2:在分号后面写入你的Python路径

      LINUX,MAC 默认安装了 Python 环境

四:第一个程序 “Hello world”

         1:使用Python命令执行hello.py

      

         2:制定解释器

          不适用Python 命令执行脚本时,给脚本权限直接执行 ./hello.py 时会报错如:

            

         要想处理此错误就必须在文件的第一行写入 #!/usr/bin/env  python3

                 

五:Python 交互器

    进入 Python 交互器

       

六:变量:

      1:变量的定义

     变量用于存储在计算机程序中被引用和操作的信息.。他们还提供了一个标签数据的描述性名称的方式,所以我们的程序可以更清楚地了解读者和我们自己。把变量看作是容纳信息的容器是很有帮助的.。他们的唯一目的是在内存中标记和存储数据.。这些数据可以在整个程序中使用.。

     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']

      3:变量命名规范

                   1:变量命名时不要随意命名,最好是使用变量本身的作用来进行命名

                            如:age  =  "18"

                   2:多个单词时请使用 “ _ ” 下划线与单词首字母大写

                            如:

# 1:使用 "_" 来分割不同的单词 
your_age  =  "18"
# //* 本人常使用这种方法

# 2: 使用每个单词都首字母大写
YourAge  =  "18"   #驼峰体

  

                  3:首字母大写一般用来定义类名 ,全大写一般用来定义常量,(常量是不变的量)

                            如:

# 1: 首字母大写:用法类名
class  Your_age:
       pass
              
# 2:全部大写:用法常量
YOUR_AGE  =  “18”    

  

七:计算机是如何读懂你的指令的

1.       ASCIIAmerican Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统。

        

 

2.       中国的字符集编码

1980年中国人,设计了GB2312编码,收录了6763个汉字个682个字符,经过多年收录,在2000GB18030 收录了27484个汉字,还包含了众多少数民族的文字,成为国家标准字符集编码

 

3.       万国码

由于每个国家都在编辑自己过加的字符集编码,而且编码格式五花八门,所以就出现了一种包含了众多字符与文字的编码,Unicode(万国码,统一吗),

每个字符站16bit位,4个字节加大了硬盘的存储数据,所以对 Unicode 进行了压缩,优化。变成了现在大对数人在使用的UTF-8。他不在统一需要4个字节进行存储,在 ascii 中的字符只占一个字节,其他的字符根据不同的文字进行字符的添加。

八:注释

1.  注释一行:# 被注释内容

     

2.  注释多行:""" 被注释内容 """

     

九:数据类型

  1.  数字:

     在变量中,不加引号的为数字,加引号的为字符

  2.  布尔值

       真:True :用 1 表示

                   假:False ;用 0 表示

                   判断条件状态时;只可能回复布尔值

 如:

>> 5 + 7  > 12
True

>> 5 + 7  > 22
False

    

  3.  字符串:

    1.  移除空白和特殊符号
      >>> age = "18  23  
      "
      >>> age.strip()
      '18  23'
      
      #  //* 取消开头与结尾的空格和tab键、与
        
    2.   拼接

      >>> a1 = "abc"
      >>> a2 = "def"
      >>> a1+a2  # 变量之间,使用 “ + ” 来进行拼接
      'abcdef'
    3. 取字符个数 (字符长度)

      name = "abc def"
      >>> len(name)
      >>> 7
    4. 取索引

      >>> name = "123456"
      >>> name[3]     #输入你想取字符的索引值(就是字符所在位置)。
      '4'
      //* 默认从第0个开始
    5. 分割(切片)(只能从左向右数)(顾头不顾尾)

      >>> name = "123abcdef"
      >>> name[3]
      'a'
      
      >>> name[0]
      '1'
      
      >>> name[0:3]  
      '123'
      
      #  //* 切片时,如果切多个字符,最后一个不会显示(顾头不顾尾)默认从第0个开始
      
      # //* 字符串是不能修改的,只能重新赋值
      

        

    6. :格式化输出

      #  1: 单行显示
      >>> name = "123"
      >>> name2 = "my name is %s"%name
      
      >>> print(name2)
      my name is 123
      
        
      #  2: 多行显示
      name = "abc"
      name2 = 123
      name3 = 22
      name4 = "abc
      	123"
      
      abc = '''
         name : %s
        name2 : %d
        name3 : %f
        name4 : %r
        name5 : %s
      '''%(name,name2,name3,name4,name4)
      print(abc)
      
      
               # 结果
      
         name : abc
        name2 : 123
        name3 : 22.000000
        name4 : 'abc
      	123'
        name5 : abc
      	123
      
      
      # 3: 占位符总结如下位
          %s :  输入字符串
          %d : 只能输出数字,否则会报错
          %f : 显示浮点数
          %r : 按原格式输出
    7. 字符串其他用法

      print(name.capitalize()),首字母大写
      print(name.casefold()),全变小写	print(name.center(10,'-')),凑足10个字符不够的按照 “-” 表示,如果不写默认以空格分割,字符串居中。
      print(name.encodswith()),打印真或假
      print(name.expandtabs)),加大字符串的空间
      print(name.find("lib")),找寻值,找到早了回复值,找不到回复 -1
      print(name.format()),与%s类似(照了相片看相片)
      print(name.isdigit()),判断是否是一个数字
      
      ============================
      print("ad".isalpha()),只包含字母的,回复 真
      print("a2d".isalnum()),只包含字母和数组的组合,回复真
      print("2".isdecimal)  ,值中有小数则返回 true
      
      age = "22"
      print(age.isdecimal())
      
      
      print("2".isdigit()),只包含整正数
      print("al_ex".isdentifier()) # 是不是合法的变量名
      print("al_ex".isupper())
      print("2".islower())
      print("2".isumeric())
      print(float("3.1"),判断是否是浮点数,不是就报错
      print("3.1".isspase()),判断是否是空格
      print(",".join("alex")), 结果: a,l,e,x //*判断决定分割
      
      print("alex".ljust(50,'-')),从左开始显示字符串,不足的用 “ - ”,
      print("alex".rjust(50,'-')),从右开始显示字符串,不足的用 “ - ”,
      =================== print("alex".translate(trantab)), print("alex".partition("1")), print("alex".replace("ex","123")), 结果:al123 //* 替换字符

十 :运算

  1.   与、或、非
    a = 60    #0 0 1 1 1 1 0 0
    b = 13    #0 0 0 0 1 1 0 1
    
    # 1:与运算,两个数字的二进制值,必须全为 1 ,则结果才为1
    
    a & b = 0 0 0 0 1 1 0 0 = 12 
    
    #  2:或运算,两个数字的二进制值,只要有一个为1 ,则结果为1
    
    a / b = 0 0 1 1 1 1 0 1 = 49
    
    # 3: 异或运算,两个数字的二进制值,上下对比不同则为1
    
    a ^ b =  0 0  1  1 0 0 0 1 = 49
    

      

  2. 余数:可以用来判断奇偶数如下
    >>> 5%2
    1
    
    >>> 6%2
    0
    
    # //* 余 1 的话就证明是奇数,整除就证明是偶数
  3. 特殊运算符

          //* 在Python中 有时会用到计数器,计数器就会用到以上的算法

  4.  逻辑运算

      

     

  5.  成员运算

     

    # (1):  “in” 判断序列中是否有要搜索的值,有的话返回 True 没有返回 False
    >>> age
    [1, 2, 3, 4, 5, 6, 7, 8, 9]
    
    >>> 8 in age
    True
    
    >>> 18 in age
    False
    
     
    
    # (2): “not in” 判断序列中是否有要搜索的值,有的话返回 False没有返回True
    
    >>> age
    [1, 2, 3, 4, 5, 6, 7, 8, 9]
    
    >>> 8 not in age
    False
    
    >>> 18 not in age
    True
    

      

  6. 身份运算

     

    # 1:判断数据类型
    
    >>> type(8)
    <class 'int'>
    
    >>> type("a")
    <class 'str'>
    
    # //* 几种数据类型 int 数字类型,str 字符串,list 列表
    
    #  2:判断字符类型,是的话返回 True不是返回False
    >>> type(8) is int
    True
    
    >>> type("abc") is str
    True
    
    >>> type([1,2,3]) is list
    True
    
    
    # 3:判断字符类型,是的话返回 False不是返回True
    
    >>> type(8) is not int
    False
    
    >>> type("abc") is not str
    False

  

十一:用户交互

  1.  用户输入
    >>> name = input("what is your name :  ")
    what is your name : abc
    
    >>> print(name)
    abc
    

      

  2. 输入输入用户名密码,并且格式化输出

      

十二:流程控制

         if 流程控制,是可以判断条件,正确则输出 A,错误则输出 B,可以根据不同的输出条件进行不同操作

  1.   判断用户输入的是否正确,正确打印正确,错误打印错误

         

       

  2.   判断 年龄大小 ,>、<、= 显示不同结果

         

十三:for 循环

  1.   循环的主要目的是,为了减少重复代码

   如例一:循环代码4次

age = 'abc123'

for i in range(4):
     print("循环:", i )

# 结果

循环: 0
循环: 1
循环: 2
循环: 3

  

   例二:循环十次,只显示后6次

for i in range(10):
    if i<5:
        continue #不往下走了,直接进入下一次loop
    print("loop:", i )

# 结果

loop: 5
loop: 6
loop: 7
loop: 8
loop: 9

十四:while 循环

  1.  死循环,会一直循环
    count = 0
    
    while True:
        print("开始啦...",count)
        count +=1
    

      

  2.  while 限制次数循环,猜年龄:
    age = 18
    count = 0
    while count < 3:
        input_age = int(input("输入您的年龄:"))
        if  input_age == age:
            print("猜对了!")
            break
        elif input_age < age:
            print("猜小了")
        else:
            print("猜大了!")
        count += 1  # 每次loop 计数器+1
    else:
        print("猜错3次了,退出.")
    

  

十五:三元运算

  就是将 多行打印的条件显示成一行:

#  例一:

a = 1
b = 2

if a > b:
    c = a+b
else:
    c =  a-b
 
# 这么多的代码看起来是不是很烦啊,你也可以缩减为一行

c = a+b if a>b else a-b

# 结果一样哟

# 格式为:

#      result = 值1 if 条件 else 值2
#      如果条件为真:result = 值1
#      如果条件为假:result = 值2
原文地址:https://www.cnblogs.com/dream4567/p/6268753.html