勤学思培训网CSDPAL
  • 总算领会python如何学好

    python进行数学计算,有其独特的地方。本文,介绍一下Python的数学运算和数学函数方面的基础知识。以下是小编为你整理的python如何学好

    先进行几个运算:

    5/2*3+9

    8*9-5/6

    这两个算式,可以直接粘贴到python代码编译器里面,但是运行之后,没有输出结果。

    其实,python已经运算了这个式子了,只不过没显示结果。


    [图片0]

    用print可以显示运算结果。

    print(5/2*3+9)print(8*9-5/6)

    如果我们想要看到一个完整的算式,需要把算式以字符串的形式返回。

    print("5/2*3+9"+str(5/2*3+9))print("8*9-5/6"+str(8*9-5/6))

    注意:

    "5/2*3+9"就是一个字符串的形式,在英文输入法的双引号里面;

    str(5/2*3+9)是对算式进行计算,并把计算结果转化为字符串;

    +的作用是连接字符串。

    基本运算

    加减乘除的运算,和平常的一样:

    print("5+6="+str(5+6))print("5/6="+str(5/6))print("5*6="+str(5*6))print("5-6="+str(5-6))

    乘方运算2^100,在python里面,写为2**100:

    print("2^100 = " + str(2**100))print("5^10 = " + str(5**10))

    求余数,用%实现:

    print("100除以5的余数是" + str(100%5))print("100除以90的余数是" + str(100%90))

    注释的运用

    # 注释:不参与程序运行,作用是给给看代码的人一些提示。

    # 我是一个大帅哥,这行是一行注释,#号后面的表示注释

    """

    多行注释

    多行注释

    多行注释

    """

    # 一般情况下注释都直接使用#号的形式

    # 在正常开发中,三个引号对的注释形式一般是作为对整个文件的说明出现在文# 件的顶部

    # 针对某一行代码的注释,可以放在代码语句的上面,也可以放在代码的后面

    print(1801) # 系统提供的展示(打印,输出)功能

    print(666) #

    print() #默认以换行结尾

    print(100-6) # 可以直接进行数学运算,打印结果就是运算结果

    print(10086, 10+6) # 可以同时打印多个内容,多个内容之间用逗号隔开

    print(1801, 3+6, 4+7) # 打印结果里,多个内容之间会默认有一个空格

    # 单引号对和双引号对是等价的

    print('**************分割符******************')

    print('我爱中国') # 引号引起来的叫字符串,单个字符也是字符串

    print('love',end=' ') # end=''设置打印结尾的内容,默认是换行(n)

    print('****')

    print('good morning', 666, '早上好', 4+6) # 字符串和数字可以混合打印

    print('3+6') # '3+6'这是一个字符串,包含3个字符:3+6 不是数学运算

    # 有些特殊的字符需要使用转义字符(),转义字符本身也是特殊字符print('我n的'身高'是"18\0')print(r'我n的'身高'是"18\0') # 如果字符串以r开头,那么这个字符串中所# 有的转义字符全部失效。print('good' * 3) # 字符串可以和数字相乘,得到重复的字符串print('*'*10, '分割符', '*'*10)print('good' + 'morning', 666) # 字符串可以和字符串相加,得到一个拼接的字符串print('*'*20 + '分割符' + '*'*20)

    请勿将代码复制直接使用,可能出现中英文格式错误,请读者手打练习。

    导入numpy模块

    在python IDE导入numpy模块,我用的是自带解释器

    >>> import numpy as np

    >>> ([1,2,3,4]) #通过array函数创建数组

    array([1, 2, 3, 4])

    >>> c=([[1,2,3,4],[4,5,6,7],[7,8,9,10]])#二维数组,第0轴长度为3,第1轴长度为4,也就分别相当于矩阵的行数和列数

    >>> c

    array([[ 1, 2, 3, 4],

    [ 4, 5, 6, 7],

    [ 7, 8, 9, 10]])

    >>> #数组的形状可以通过其shape 属性获得,它是一个描述数组各个轴长度的元组(tuple)

    (3L, 4L)


    [图片1]

    3

    >>> (0,1,)#arange()函数指定了开始值、终值和步长创建等差数列的一维数组,注意不包含终值。

    array([ 0. , , , , , , , , , ])

    4

    >>> (0,1,10)#指定开始值、终值和元素个数创建等差数列的一维数组,通过endpoint参数指定是否包含终值,默认为Ture,即包含终值

    array([ 0. , 0., 0., 0., 0.,

    0., 0., 0., 0., 1. ])

    5

    >>> (0,2,5)#logspace和linspace类似,区别在于它创建的是等比数列,起始值为10^0,而终值为10^2

    array([ 1. , 3., 10. , 31. , 100. ])

    类的继承

    如果已经定义了Person类,需要定义新的Student和Teacher类时,可以直接从Person类继承:

    class Person(object):

    def __init__(self, name, gender):

    = name

    = gender

    定义Student类时,只需要把额外的属性加上,例如score:

    class Student(Person):

    def __init__(self, name, gender, score):

    super(Student, self).__init__(name, gender)

    = score

    一定要用 super(Student, self).__init__(name, gender) 去初始化父类,否则,继承自 Person 的 Student 将没有 name 和 gender。

    函数super(Student, self)将返回当前类继承的父类,即 Person ,然后调用__init__()方法,注意self参数已在super()中传入,在__init__()中将隐式传递,不需要写出(也不能写)。

    python中判断类型:

    函数isinstance()可以判断一个变量的类型,既可以用在Python内置的数据类型如str、list、dict,也可以用在我们自定义的类,它们本质上都是数据类型。

    在继承链上,一个父类的实例不能是子类类型,因为子类比父类多了一些属性和方法。一个实例可以看成它本身的类型,也可以看成它父类的类型。

    class Person(object):

    def __init__(self, name, gender):

    = name

    = gender

    class Student(Person):

    def __init__(self, name, gender, score):

    super(Student, self).__init__(name, gender)

    = score

    t = Teacher('Alice', 'Female')

    print isinstance(t,Person)

    print isinstance(t,Student)

    print isinstance(t,Teacher)

    print isinstance(t,object)