初识Python

1.计算机基础知识python

  (1)计算机由cpu(中央处理器)、内存、硬盘、输入输出设备组成linux

  (2)操做系统是控制计算机硬件工做的流程(软件)web

  (3)应用程序是安装在操做系统之上的软件编程

2.python简介python3.x

  (1)python的创始人为吉多·范罗苏姆(Guido van Rossum),应用领域爬虫、web、人工智能、自动化运维、云计算、金融、游戏等领域,应用的公司google、yutube、nasa、知乎、豆瓣等安全

  (2)python优势: 简洁,高级语言,可移植性,开发效率高(有强大的第三方类库),可嵌入,可扩展运维

    缺点:速度慢、不能加密、线程不能利用多CPU问题编程语言

  (3)python是什么编程语言:
  编程语言主要从如下几个角度为进行分类,编译型和解释型、静态语言和动态语言、强类型定义语言和弱类型定义语言性能

编译型与解释型
  编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机能够直接以机器语言来运行此程序,速度很快;
  而解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,因此运行速度是不如编译后的程序运行的快的.
  这是由于计算机不能直接认识并执行咱们写的语句,它只能认识机器语言(是二进制的形式)优化

编译型
  优势:编译器通常会有预编译的过程对代码进行优化。由于编译只作一次,运行时不须要编译,因此编译型语言的程序执行效率高。能够脱离语言环境独立运行。
  缺点:编译以后若是须要修改就须要整个模块从新编译。编译的时候根据对应的运行环境生成机器码,不一样的操做系统之间移植就会有问题,须要根据运行的操做系统环境编译不一样的可执行文件。

解释型
  优势:有良好的平台兼容性,在任何环境中均可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码的时候直接修改就能够,能够快速部署,不用停机维护。
  缺点:每次运行的时候都要解释一遍,性能上不如编译型语言

动态语言和静态语言
常咱们所说的动态语言、静态语言是指动态类型语言和静态类型语言
  (1)动态类型语言:动态类型语言是指在运行期间才去作数据类型检查的语言,也就是说,在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,
    在内部将数据类型记录下来。Python和Ruby就是一种典型的动态类型语言,其余的各类脚本语言如VBScript也多少属于动态类型语言。
  (2)静态类型语言:静态类型语言与动态类型语言恰好相反,它的数据类型是在编译其间检查的,也就是说在写程序时要声明全部变量的数据类型,C/C++是静态类型语言的典型表明,
    其余的静态类型语言还有C#、JAVA等

强类型定义语言和弱类型定义语言
  (1)强类型定义语言:强制数据类型定义的语言。也就是说,一旦一个变量被指定了某个数据类型,若是不通过强制转换,那么它就永远是这个数据类型了。
    举个例子:若是你定义了一个整型变量a,那么程序根本不可能将a看成字符串类型处理。强类型定义语言是类型安全的语言。
  (2)弱类型定义语言:数据类型能够被忽略的语言。它与强类型定义语言相反,一个变量能够赋不一样数据类型的值。
    弱类型定义语言在速度上可能略逊色于强类型定义语言,可是强类型定义语言带来的严谨性可以有效的避免许多错误。另外,“这门语言是否是动态语言”与“这门语言是否类型安全”之间是彻底没有联系的!
    经过上面这些介绍,咱们能够得出,python是一门动态解释性的弱类型定义语言。

python解释器种类:
  CPython: 官方使用的解释器
  IPython: 基于CPython之上的一个交互式解释器,在交互方式上有所加强
  PyPy: 是另外一个Python解释器,对py代码进行动态编译,速度快
  Jython: 是运行在Java平台上的Python解释器
  IronPython: 是运行在微软.Net平台上的Python解释器

3.快速入门

  (1)python官网www.python.org

  第一个python程序

print("hello world",'你好','世界')
结果
hello world 你好 世界

注意:python在执行过程当中会自动生成一个与其同名的 .pyc 文件,该文件就是Python解释器编译以后产生的字节码

  (2)python3与python2的区别

  python3默认用的utf-8字节码,python2默认用的ASCII码(默认不识别中文,须要coding定义)

  (3)变量命名规范
    一、由字母,数字,下划线任意组成
    二、不能以数字开头
    三、禁止使用python中的关键字 ['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']
    四、不能使用中文和拼音命名
    五、作到简明知意
    六、严格区分大小写
  (4)推荐写法:

    大驼峰  AgeOfOldboy = 56

    小驼峰  ageOfOldboy = 56

    下划线  age_of_oldboy = 56

查看python内部关键字

1 import keyword 2 print(keyword.kwlist)

4.注释和变量
    单行注释
        #要注释的代码
    多行注释
        # 须要注释的代码1
        # 须要注释的代码2
        ……
    方法二
        '''
        须要注释的代码
        '''
    方法三
        """
        须要注释的代码
        """
    (3)变量的赋值
        name = 'bob'
    (4)常量:常量就是将变量名大写,尽可能保持不更改的一种量

5.初识基础数据类型

  查看变量的数据类型 type()
  整型   int  用于计算比较

计算机中是没法准确的表示一个小数的(全部语言都有这样的问题)
print(10/3)
结果
3.3333333333333335
print(999%10000)
结果
999

二进制计算
print(2**0) # 1
print(2**1) # 2
print(2**2) # 4
print(2**3) # 8
print(2**4) # 16
print(2**5) # 32
print(2**6) # 64
print(2**7) # 128
print(2**8) # 256
print(2**9) # 512
print(2**10) # 1024

  float 浮点数

 1 为何要叫浮点数: 由于小数点是浮动的
 2 浮点数能表示的数学上的数字: 有理数(有限小数 无限循环小数)
 3 浮点数的小数点是不许确的: 小数的小数位是转换成二进制存储
 4 若是你建立的变量自己带小数点,那么这个变量的数据类型直接就是浮点数
 5 全部的除法(除了//)获得的都是小数
 6 浮点数若是太长请转换成字符串存储,好比a = '1.71264864975975073507505'
 7 1.2
 8 2.3333344
 9 2.56789*10**2 = 256.789
10 
11 注意:
12 python2.x 整数除以整数就会取整(向下取整),有一个数浮点数,就按照浮点数计算
13 python3.x 全部的除(除了//)的结果都是小数
14 注意除数不能为0,不然报错

  字符串 str 在Python中,用单引号,双引号,或者三引号引发来的都是字符串,字符串不能相除或相减,能够相加相乘,只是一些特殊的格式须要不用的引号

 1 相加的时候双方必须都是字符串(也称为拼接)
 2     name = "bob"
 3     hobby = "linux"
 4     new = name+hobby
 5     print(new)
 6 结果
 7     boblinux
 8 
 9 只能是数字和字符串相乘
10     name = "bob"
11     new = name * 2
12     print(new)
13 结果
14     bobbob
15 
16 换行打印
17     a = '床前明月光, \n疑是地上霜, \n举头望明月, \n低头思故乡.'  # \n 转义字符. 换行
18     print(a)
19 结果
20     床前明月光, 
21     疑是地上霜, 
22     举头望明月, 
23     低头思故乡.

  布尔值 bool

1 True    真
2 False   假

6.程序交互

  (1)input()括号内的内容必须是字符串,也称为提示语句,用input获取到的内容都是字符串

 1 例1
 2     s1 = input("请输入: ")
 3     print(type(s1))
 4 结果
 5     请输入: 11
 6     <class 'str'>
 7 例2
 8     s1 = int(input("请输入: "))
 9     print(type(s1))
10 结果
11     请输入: 22
12     <class 'int'>

  (2)将字符串转换成数字

1 num = int("88")
2 print(type(num))

  (3)将数字转换成字符串

1 s = srt("123")
2 print(type(s))

7.格式化输出

  %s    字符串
  %d或%i  整型(数字)
  %f    浮点数(小数)
  %%   转义符

 1 事例一
 2 name = input("请输入姓名:")
 3 age = int(input("请输入年龄:"))
 4 job = input("请输入职业:")
 5 hobbie = input("请输入爱好:")
 6 print('''
 7 ---------------- info of %s --------------
 8 Name    : %s
 9 Age     : %d
10 Job     : %s
11 Hobbie  : %s
12 ------------------- end-------------------
13 '''%(name,name,age,job,hobbie))
14 # 注意点: 必须按照相对应的数量来填充  使用位置来填充参数
15 
16 方法二
17 print(f'''
18 ---------------- info of {name} --------------
19 Name    : {name}
20 Age     : {age}
21 Job     : {job}
22 Hobbie  : {hobbie}
23 ------------------- end-------------------
24 ''')
25 #应用场景: 动态获取用户数据并写入固定格式+号也能够
26 
27 事例二
28 name = 'bob'
29 print('工程师%s剩余30%%的数据没有拷贝'%(name))

8.if条件语句

  一、单条件if语句

1 if 条件:
2   代码块

  二、双条件if语句

1 if 条件:
2   代码块1
3 else4   代码块2

  三、三条件if语句

1 if 条件:
2   代码块
3 elif:
4   代码块
5 elif:
6   代码块

  四、多条件if语句

1 if 条件:
2   代码块
3 elif:
4   代码块
5 elif:
6   代码块
7 else8   代码块

  五、嵌套if语句

1 if 条件:
2     if 条件:
3         代码块
相关文章
相关标签/搜索