美文网首页
DAY2 Python基础 2018-06-12

DAY2 Python基础 2018-06-12

作者: 十二右 | 来源:发表于2018-06-15 15:22 被阅读0次

    01-python初识

    02-python3基础语法

    03-python3基本数据类型

    04-进制转换

    05-变量

    06-运算符

    07-math模块中常用函数


    01-python初识

    ======常用的快捷键========
    ctr+b 执行(sublim)
    ctr+/ 单行注释
    ctr+c 拷贝
    ctr+v 粘贴
    ctr+s 保存
    ctr+z 撤销
    ctr+shift+z 反撤销
    ctr+a 全选
    ctr+x 剪切
    ctrl + 单击选中的函数,进入函数的解释界面

    ctrl+f-->输入要替换目标-->ctrl+r-->输入更新的内容-->replace all

    版本号A.B.C
    A在语言做重大修改,一般不兼容之前的版本。
    B在做功能增加的时候,B的值增加。
    C在修复BUG时候,值增加。
    注意:我们目前讲的Python都是Python3.x
    print是Python中的内置函数,功能是在控制台打印括号中的内容
    print函数只是在程序员自己做测试的时候去使用

    print("hello world~") #python2.x中 print "hello world"  
    

    02-python3基础语法

    2.1.注释:

    注释就是穿插代码中的说明性文字,对于代码实现功能无任何作用,注释不会参与执行。在写代码的时候需要经常写注释

    单行注释:就是在注释的内容前加#

    # 注释一行注释
    # 这是第二行注释

    多行注释:

    a.在每一行前面加#

    使用'''或者"""括起来(推荐使用上三个""")
    '''
    这是多行注释
    这是多行注释
    这是多行注释
    '''
    """
    这是多行注释
    这是多行注释
    这是多行注释
    """

    2.2.标识符

    在开发中使用的所有的名字都是标识符(包括变量名、函数名、类名、对象名等)

    硬性要求:
    1.由字母(a-z,A-Z)、数字(0-9)、下划线(_)组成
    2.数字不能开头
    3.不能是保留字(关键字)(后边会涉及)
    规范:
    1.要见名知意
    2.PEP 8规范(变量名):全部小写,如果名字是由多个单词组成,单词之间以_分开
    补充:驼峰式:如果名字是由多个单词组成,第一个单词首字母是小写,后面的每个单词第一个字母大写
    python中大小写敏感:Key和key是不一样的
    a2_=1
    abc=2
    a+b=3 #SyntaxError: can't assign to operator 语法错误:不能赋值给操作符
    2d=1 #SyntaxError: invalid syntax 语法错误:无效语法
    for=2 #SyntaxError: invalid syntax (for 是关键字)

    cat_name = 1 #PEP 8
    catName = 1 #驼峰式

    2.3.关键字(保留字)

    在Python中有自己独特功能的一些单词,程序员在使用标识符的时候不能使用关键字
    import keyword #导入内置keyword模块
    keyword.kwlist #获取所有关键字

    print(keyword.kwlist)
    

    """
    ['False', 'None', 'True', 'and', 'as', 'assert', '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']
    """

    2.4.行与缩进

    在python中,语法对缩进有严格的规范。同一级的代码要写在一个缩进下(缩进->空格和制表符tab)
    行:可以通过换行将代码分块,要求函数定义和其他代码之间要有一个换行,类的声明和其他代码之间要有两个换行。(不按要求来不会报错)

     abc=1 
    \# abc前多了一个空格,IndentationError:unexpected indent 缩进错误:意外缩进
    

    注意:语法相关的所有符号,都必须是英文输入法下的符号。

    2.5.多行语句

    一行代码很长,需要多行显示
    python中,如果一行只有一个语句,那么语句后面可以不写分号(写了不会报错)
    如果一行中有多条语句,那么语句间要用分号(;)分开

    bbb=2
    ccc=3
    ddd=4
    
    sum1=aaa+bbb+ccc+ddd
    
    sum2=aaa+\
         bbb+\
         ccc+\
         ddd
    

    \可以将一行代码写成多行,相当于还是在一行里,可以任意缩进,不会出错
    列表、字典、元组、集合的元素在多行显示的时候,可以不用\连接

    dict1={ 
            'name':'yuting',
            'age':18,
            'gender':'女'}  #dict 字典
    

    03-python3基本数据类型

    python3中标准的数据类型有六种
    Number(数字)、Str(字符串)、List(列表)、Tuple(元组)、Set(集合)、Dict(字典)

    3.1.数字

    python中的数字分为:整型(整数)、浮点型(小数)、布尔、复数(实部+虚部)
    整型(int):python3中只有长整型int,python2中有long 例如:23、100、-25、0
    浮点型(float):python3只有float类型,例如:12.8、1.0、0.0、-10.5、2e2、2e-2
    布尔(bool):表示真假(是否)的值,值只有True(1)和False(0)两个值
    复数(complex):由实部和虚部组成,例如:10+1j,12.7+2j
    a=10+1j

    # type():查看()里内容的类型
    print(type(10)) #type()查看()里内容的类型
    print(type(12.5))
    print(type(True))
    print(type(10+2j))
    print(a)
    

    3.2.字符串

    由单引号或者双引号括起来的数据就是字符串(推荐使用单引号)
    python中没有字符类型,所说的字符就是用引号括起来的长度是1的字符串
    'hello world' '123' '1' #字符串中单独的一个符号就是一个字符
    '!2Dfs'
    '' #空串,长度是0
    ' ' #空格字符串是有意义的字符串
    python需要转义字符“\”来表示一些特殊的字符串:包括一些有特殊意义和特殊功能的字符串

    '\''
    print('\'') # '
    print('\\') # \
    
    str1='\t床前明月光,\n疑似地上霜' #\n->换行 \t->制表符
    
    print(str1)
    print('a\\nb')   # a\nb
    # 在字符串前加r\R,阻止转义字符转义
    print(r'a\nb')
    print(R'\ta')
    

    04-进制转换

    进制:十进制、二进制、八进制、十六进制(要求:认识、会转换)

    4.1十进制:

    基数:0,1,2,3,4,5,6,7,8,9
    逢十进一(10->10)

    123:100+20+3  1*10^2+2*10^1+3*10^0(任何数的0次方都是1)
     8976:6*10^0+7*10^1+9*10^2+8*10^3
    

    12 #直接写数字,就是十进制
    print(12) #可以直接将数据转换成十进制

    print(0xae)
    

    4.2 二进制:

    (计算机在存储数据的时候,存的都是二进制数)
    逢二进一(10->2)
    基数:0,1 (111 10001 0001)

    1101:1*2^0+0*2^1+1*2^2+1*2^3=13
    101011:1*2^0+1*2^1+0*2^2+1*2^3+0*2^4+1*2^5=1+2+0+8+0+32=43
    

    二进制转10进制(相乘求和):每一位上的数乘以当前位上2的幂次数(从低位到高位,幂次数从0开始依次加1)
    0b1011 #在数字前加'0b'表示二进制
    print(0b1011)
    bin() #该函数可将括号中的数字转换成二进制数,返回的是字符串形式的数据

    print(bin(0o75))
    

    4.3八进制:

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

    26:6*8^0+2*8^1=22
    10:8^1=8
    

    0o10 #在数字前加'0o'表示八进制

    print(oct(10))  #将括号里面的数据转换成8进制
    print(oct(0b110011))
    

    4.4十六进制:

    逢十六进一(10->16)
    基数:0,1,2,3,4,5,6,7,8,9,a/A(10),b/B(11),c/C(12),d/D(13),e/E(14),f/F(15)
    1f:116^1+1516^0=16+15=31
    ab:1016^1+1116^0=160+11=171
    0xa1 #在数字前加'0x'表示十六进制

    print(hex(10)) #将括号里面的数据转换成十六进制
    print(hex(0o67))
    

    4.5进制转换

    a.其他进制转换成十进制:相乘求和

    b.十进制转换成其他进制:整除取余法

    100->(2) 1100100
    100->(8) 12-4 1-4 0-1=144
    100->(16) 6-4 0-6=64

    c.二进制和八进制(每三位二进制转换成一位八进制)、十六进制(每四位二进制转换成一位十六进制)的转换

    (2)001 100 100-->(8)144
    (2) 0110 0100-->(16)64
    (8)571-->(2)101 111 001
    (16)a1b-->(2)1010 0001 1011

    05-变量

    变量用来存储数据的
    在python中声明变量不用指定类型,一个变量可以存储任何类型的数据

    5.1.声明变量:变量名 = 初值

    变量名:a.标识符; b.PEP 8命名方式; c.见名知意
    = :赋值符号,要求赋值符号的左边必须是变量 a=10;
    a =10
    10=20 # SyntaxError: can't assign to literal 不能赋值

    初值:python中声明变量必须赋值
    name='YuTing' #声明一个变量,并且赋了初值为'YuTing'

    同时声明三个变量a,b,c他们的初值都是10
    a=b=c=10

    同时声明了三个变量a1,b1,c1;他们对应的初值分别是10,12.6,aaa
    a1,b1,c1=10,12.6,'aaa'

    一个变量可以存储多种类型的值,(python是动态语言)

    name=100 
    age=a
    print(age)
    

    06-运算符

    python中的运算符:算术运算符、比较运算符、赋值运算符、逻辑运算符

    6.1.算术运算符:+(加)、-(减)、*(乘)、/(除)、%(求余)、//(整除)、**(幂运算)

    +、-、*、/、%和数学里面相应的运算时一模一样
    print(12+10.0) #22.0
    print(100-8) #92
    print(10*7) #70
    print(5/2) #2.5
    print(10%4) #2

    //(整除):可以对浮点数做整除的操作,只是结果只保留整数的部分(直接去掉小数部分)

    print(16//10)  #1
    print(16/10)   #1.6
    print(10//3)   #3
    

    x**y:计算x的y次方

    print(2**3)  #计算2的3次方
    

    练习:获取n(三位数)的个位数、十位数、和百位数

    n=789
    # 百位数:
    print('百位数:',n//100)    
    # 十位数:
    print(n%100//10) 
    print(n//10%10)  
    # 个位数:
    print('个位数:',n%10)         
    

    通过import关键字可以导入python中内置的模块
    math是python内置的一个提供数学运算的模块
    import math

    07-math模块中的函数

    先用import关键字导入python中内置的math模块才能使用

    import math   
    

    7.1factorial(n):求n的阶乘

    num=math.factorial(10)
    print(num)
    

    7.2fabs(n):求n的绝对值

    num1=math.fabs(-20)
    print(num1)
    

    7.3pi:圆周率

    print(math.pi)
    

    7.4fmod(x,y) 取余数,值是一个浮点数 ,算式是x/y

    num1=math.fmod(5,4) 
    print(num1)  # value=1.0
    

    7.5ceil(x):取大于等于x的最小整数值,x可以是int、float、bool但不能是comples

    num2=math.ceil(False)
    print(num2)  #value=0
    

    7.6log(x):返回x的自然对数,默认以e为基数,对于给定基数n:log(x)/log(n)

    num3=math.log(125)/math.log(5)
    print(num3)  # value=3.0000000000000004 最后的4为储存错误  5^3=125
    print('%.2f'%num3) #value=3.00 限定小数位数可确保数值精确
    
    n=math.log1p(8)  #返回x+1对x的对数值   ??????????????
    print(n)
    

    7.7 sqrt(x):求x的平方根

    num4=math.sqrt(9)
    print(num4)  #value=3.0
    

    7.8 trunc(x):返回x的整数部分

    num5=math.trunc(3.18)
    print(num5)  #value=3
    

    7.9cos(x):求x的余弦,但是x必须是弧度;math.pi/6=30度

    sin(x):求x的正弦值
    tan(x):求x的正切值

    num6=math.cos(math.pi/3)
    print(num6)  #value=0.5000000000000001 ,数值异常同line 14
    
    num6_2=math.tan(math.pi/4)
    print(num6_2)
    print('%.2f'%num6_2)
    if num6-0.5<0.000000001:
        print('r')
    else:
        print('f')  
    

    7.10radians(x):把角度x转换成弧度

    num7=math.radians(180)
    print(num7) #value=3.141592653589793=pi
    

    7.11pow(x,y):返回x的y次方,及x**y

    num8=math.pow(3,3)
    print(num8)  #value=27.0
    

    7.12ldexp(x,i):返回x*(2**i)的值

    num9=math.ldexp(5,3)
    print(num9) #value=40=5*2^3
    

    7.13 degrees(x):把x从弧度转换成角度

    num10=math.degrees(math.pi/4)
    print(num10)  #value=45.0 
    

    相关文章

      网友评论

          本文标题:DAY2 Python基础 2018-06-12

          本文链接:https://www.haomeiwen.com/subject/auiyeftx.html