2019-07-23

关于Python

Python是一种计算机程序设计语言,是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。

Python的优缺点

优点

1)简单和明确,做一件事只有一种方法。
2)学习曲线低,与其它很多语言比上手更容易。
3)开放源代码,拥有强大的社区和生态圈。
4)解释型语言,完美的平台可移植性。
5)支持两种主流的编程范式,可以使用面向对象和函数式编程。
6)可扩展性和可嵌入性,可以调用C/C++代码也可以在C/C++中调用。
7)代码规范程度高,可读性强,适合有代码洁癖和强迫症的人群。

缺点

1)执行效率低下,因此计算密集型任务可以由C/C++编写。
2)代码无法加密,但是现在的公司很多都不是卖软件而是卖服务,这个问题慢慢会淡化。
3)在开发时可以选择的框架太多,有选择的地方就有错误。

注释

注释是代码中对代码进行解释和说明的文本内容;不会影响程序的功能和执行。

1)单行注释:在一行文字的前面加#(快捷键:ctrl + /)

2)多行注释:将注释内容写在三个双引号或者三个单引号里面(但是一般使用三个单引号)

    """
    多行注释1
    多行注释2
    """

语句

一条语句占一行,语句结束后不用加分号。

如果一行要显示多条语句,语句之间必须用分号隔开。


    sum = 10; str = 'abc'

如果一条语句很长,需要多行显示的时候,可以在语句中加\然后在换行(注意\不能破坏数据本身)。

    num2 = 1829839284 + num\
            * 34344 - 3798798\
            + 809839\
            / 2738465 ** 1\
            - (531-53168) + (51 - 1)
    print(num2)

缩进

python中一行代码的开头不能随便加缩进(空格或制表符)。

python语法要求必须有缩进的位置一定要加缩进。

    if num > 10:
        print(num)

标识符

标识符是用来命名用的。一般是给变量命名、函数命名或者类命名。

标识符规则:所有标识符都必须是由字母、数字和下划线组成;不能以数字开头。

    # 错误命名
    239 = 10
    # 正确命名
    abc12 = 10
    abc = 10
    _23 = 10
    _abc = 10

python2.x以后,标识符中可以出现中文,日文等符号;实际开发中不推荐使用。

关键字

关键字(保留字)就是python中有特殊功能和特殊意义的标识符。

    # 查看python中所有关键字
    import keyword
    print(keyword.kwlist)
    # 输出结果
    """
    ['False', 'None', 'True', 'and', 
    'as', 'assert', 'async', 'await', 
    'break', 'class', 'continue', 
    'def', 'del', 'elif', 'else', 
    'except', 'finally', 'for', 
    'from', 'global', 'if', 'import', 
    'in', 'is', 'lambda', 'nonlocal', 
    'not', 'or', 'pass', 'raise', 'return', 
    'try', 'while', 'with', 'yield']
    """

常见数据类型和数据

1)数字数据:整型(int)、浮点型(float)。

整型:10,89,-10 浮点型:12.9,23.0,-12.0,0.23

2)字符串(str):用双引号或者单引号将文本数据引起来。

    'abc'
    "abc"

3)布尔(bool):只有True和False两个值。

4)列表(list)、元组(tuple)、集合(set)、字典(dict)、函数(function)等······

5)类型转换:类型名(数据) → 将括号中的数据转换成指定的类型并返回。

    int(20.1)
    float(100)

输出和输入

1)print函数 - 输出函数:在控制台打印print后面括号中的内容的结果。

    print(100, 'abc', 10+20)

2)input函数:获取从控制台输入的内容;不管输入的内容是什么,input返回的结果的类型都是字符转类型。

input(提示信息)

    input('请输入')

进制转换

计算机只能存储和处理二进制数据

int类型 - 包含所有的整数,整数可以表示为十进制、二进制、八进制和十六进制。

1)十进制

基数:0,1,2,3,4,5,6,7,8,9

进位:逢十进一

位权:10^x 123(10) = 1×10^2 + 2×10^1 + 3×10^0 = 123(10)

2)二进制

基数:0,1

进位:逢二进一

位权2^x 111(2) = 1×2^2 + 1×2^1 + 1×2^0 = 7(10)

3)八进制

基数:0,1,2,3,4,5,6,7

进位:逢八进一

位权8^x 111(8) = 1×8^2 + 1×8^1 + 1×8^0 = 73(10)

4)十六进制

基数:0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f

进位:逢十六进一

位权16^x 111(16) = 1×16^2 + 1×16^1 + 1×16^0 = 273(10)

表示方式:在不同进制数前加相应前缀

    # 10进制
    num = 10
    # 2进制
    num1 = 0b1011
    # 8进制
    num2 = 0o67
    # 16进制
    num3 = 0x5fa

原码反码和补码

计算机存数据的时候,只能存数字,而且存的是数字的二进制的补码。

正数的原码、反码和补码相同。

1)原码 = 符号位(0表示正,1表示负) + 真值(数字转换成二进制的值)。

10 → 1010(真值)→01010

10的原码:00000000 00000000 00000000 00001010

-10的原码:10000000 00000000 00000000 00001010

2)负数反码:符号位不变,其他位取反(0变1,1变0)

-10的反码:11111111 11111111 11111111 11110101

3)负数的补码:反码+1

-10的补码:11111111 11111111 11111111 11110110

计算机采用补码的原因:计算器没有减法器,负数采用原码进行加法运算的时候结果不对,采用补码结果才对。

运算符

python支持的运算符:数学运算符、比较运算符、逻辑运算符、位运算、赋值运算。

数学运算符:+(求和),-(求差),(求积),/(求商),%(求余),//(整除),*(幂运算)

1)+-*/和数学+-×÷功能一模一样。

2)% 求余数。多用于判断一个数能否被另一个数整除;对2取余判断一个数是奇数还是偶数。

3)//求商,取商的整数部分(整数)。

    num = 123
    print(num//100) # 1
    print(num % 10) # 3
    print(num // 10 % 10) # 2
    print(num % 100 // 10) # 2

4)** 求次方值

x ** y 求x的y次方

    print(2**3)
    print(16 ** 0.5) # 4.0
    print(8 ** (1/3)) # 2.0
比较运算符:>,<,>=,<=,==,!=。

所有比较运算符的结果都是布尔值(不是True就是False)

1)>,<,>=,<=和数学中相应的比较运算符一样。

2)== 判断是否相等,!=判断是否不相等。

python比较大小可以连写比较范围。

    print(10 < 100 < 200)

你可能感兴趣的:(2019-07-23)