精华内容
下载资源
问答
  • 2020-11-01 11:52:12

    python是一门非常有潜力的高级语言,历经多年的发展,其在编程上发挥着越来越大的作用。在这学期中,通过选修python课上的基础知识学习,我对python也有了一定的认识。而且,在字符串上的处理,python相对于c语言也是给程序员极大的便利。而python不仅如此,它的库也很多,正因为它强大的库,让编程变得不再艰难。但是,我认为python虽然在许多方面相对于c语言比较方便,但也有其相对于弱一点的方面,比如说for循环等方面。虽然一学期下来,我对python的学习也仅仅只是它的基础方面,但python的强大,也是足足地吸引着我,希望自己能够在不断地学习中,将python学习的更加好。 python是一门非常有潜力的高级语言,历经多年的发展,其在编程上发挥着越来越大的作用。在这学期中,通过选修python课上的基础知识学习,我对python也有了一定的认识。

    在学习python的第一节课上,其对我的最初的印象就是,相较于我学习过的c语言编程,它更加的简洁。所有的变量都不需要像c语言编程那样需要提前去定义,这样给了编程者很大的自由空间与方便。如x=2,即可同时完成变量的定义与赋值。对于简化程序的代码,起到了许多的作用。而且,在字符串上的处理,python相对于c语言也是给程序员极大的便利。在c语言中,只能用字符类的数组对字符串进行相应的操作,步骤也是相对于比较繁琐的,而在python中,当我们需要创建一个字符串的时候,只需要在创建字符串的时候用“s=”就可以了。而python不仅如此,它的库也很多,正因为它强大的库,让编程变得不再艰难。我们只需要调用库中的函数,而对于函数的具体实现,也没有特殊的需求。

    但是,我认为python虽然在许多方面相对于c语言比较方便,但也有其相对于弱一点的方面,比如说for循环等方面。不过也依然不会影响到python的强大,而随着近几年来的发展,python的受欢迎度也越来越高,而它的运用的领域也是越来越多,比如人工智能和大数据等领域,python都是在其中扮演者重要的角色。虽然一学期下来,我对python的学习也仅仅只是它的基础方面,但python的强大,也是足足地吸引着我,希望自己能够在不断地学习中,将python学习的更加好。

    更多相关内容
  • python学习总结

    2019-04-30 01:13:10
    NULL 博文链接:https://youyou888856.iteye.com/blog/2388212
  • python心得体会1000字-Python学习心得

    千次阅读 2020-11-01 11:53:39
    首先很庆幸自己选到了这门个性化选修,可能是我个人比较认为这门课程所用的语言很特别很奇妙,老师也很有趣,能让我们更好的了解Python这门课程真正的用途。在学习Python这门课程的这段时间以来,并且自己也能认识...

    首先很庆幸自己选到了这门个性化选修课,可能是我个人比较认为这门课程所用的语言很特别很奇妙,老师也很有趣,能让我们更好的了解Python这门课程真正的用途。在学习Python这门课程的这段时间以来,并且自己也能认识并且学习到很多知识,以下就是对这门课程所做的总结:

    Python是一种高级动态,完全面向对象的语言,方便快捷。运行程序时,打个比方,计算圆周率类的高级算术题 只要import math math.sqrt()就可以轻松的计算出圆周率,Python就类似于一个超级计算机。

    学习的知识点如下:

    1、 整型int与浮点型float:可以进行基本的运算 如5*7=35 、7/2=3.5、7%3=1等 一些相关的数学函数类似于sin之类都在math模块中

    a = [1,True,'ab']

    a + ["Hello"]

    a + [False]

    a + [False]

    print(len(a))

    print(a[1:3])

    print(a[0:3:2])

    print(a[::-1])

    a+a

    2、复数计算与逻辑值:复数的与或非()相关的都可以很快捷的运算出结果 逻辑值如1>2为false、 bool(999)为true

    3、 字符串的相关操作:+连接、 *复制、len长度、[start:end:step]用来提取一部分和以及一些相关高级操作 如下图(含例):

    #字符串操作

    a,b = 'abc','xyz'

    print('a' in a)

    print(ord(a[0]))

    print(chr(65))

    print(r'南工院')

    print('中文')

    4、.列表与元组:列表可以增加、删除、替换和重排的作用和一些切片拆分的操作 如下图:

    #List列表

    a=[1,2,3,4]

    b = a

    b[1] = True

    print(a)

    #列表元组的基本操作

    # + * len() [] in

    a=[1,2,3]

    a+[4]

    a*2

    len(a)

    2 in a

    #列表元素的高级操作

    mylist=[1,2,3,4,5]

    mylist[1:4]

    mylist[2:5]

    mylist[-3::-1]

    mylist[::2]

    #切片

    s='abcdefg12345'

    print(s[3:9])

    print(s[5:])

    print(s[-1:-6:-1])

    print(s[:10:2])

    #拆分

    t='Mike and Tom'

    print(t.split(' '))

    5、range函数:是连续序列生成器

    #range函数

    list(range(10))

    list(range(5,10))

    range(0,10)

    tuple(range(10))

    6、集合set:集合是不重复元素的无序组合、用set可以创建空集也可用set从其他序列转换生成集合 如下图

    #set集合

    #不重复元素的无序组合

    a=[1,2,3,4,3,2,1]

    b=set(a)

    print(a)

    print(b)

    #upper/lower/swapcase修改大小写

    print(t.upper())

    print(t.lower())

    print(t.swapcase())

    7、字典dict:是通过key值来索引values元素 如下图

    mydict={1:'Mon','linel':3332}

    mydict['Mon']=3

    'linel' in mydict

    mydict.keys()

    mydict.values()

    mydict.items()

    8、运算表达式,函数调用如 import math /n math.sqrt 和赋值 如a=3 是讲3赋值给a这个逻辑

    9、if条件语句:包含elif或多条elif语句和一条else语句组成 while语句是条件循环语句 其中break语句是直接跳出循环 如下图

    #条件if

    #elif<逻辑条件>:可以多个elif

    a=12

    if a>10:

    print("Great!")

    elif a>6:

    print("Middle!")

    else:

    print("Low!")

    #while循环

    numbers=[12,37,5,42,8,3]

    even = []

    odd = []

    while len(numbers) > 0:

    number = numbers.pop()

    if(number % 2 == 0):

    even.append(number)

    else:

    odd.append(number)

    print('even:',even)

    print('odd:',odd)

    10、函数function :定义函数为def语句 调用函数为<函数名>(<参数>) 相关例子如下图:

    def sum_list(alist): #定义一个带参数的函数

    sum_temp = 0

    for i in alist:

    sum_temp += i

    return sum_temp #函数返回值

    print(sum_list) #查看函数对象sum_List

    my_list = [23,45,67,89,100] #调用函数,讲返回值赋值给my_sum

    my_sum = sum_list(my_list)

    print("sum of my List;%d" % (my_sum,))

    def func(n):

    total = 1

    for i in range(1, n+1):

    total = total+1

    return total

    def sum(n):

    total = 0

    for i in range(1,n + 1):

    total += func(i)

    print(sum)

    sum(3)

    def func_test(key1,key2,key3=23):

    print("k1=%s,k2=%s,k3=%s" % (key1,key2,key3))

    print("====fun_test")

    func_test('v1','v2')

    func_test('ab','cd',768)

    func_test(key2='kk',key1='k')

    11、参数 及位置参数

    #参数的默认值

    def thank_you(name='everyone'):

    print('You are doing good work ,%s!' %name)

    thank_you()

    thank_you('张三')

    #位置参数

    def desc_person(first_name,last_name,age):

    print("First name: %s" % first_name.title())

    print("Last name: %s" % last_name.title())

    print("Age: %d" % age)

    desc_person('brain','kernighan',30)

    desc_person(age=20,first_name='zhang',last_name='hai')

    #混合位置和关键字参数

    def desc_person(first_name,last_name,age=None,favorite_language=None):

    print("First name: %s" % first_name.title())

    print("Last name: %s" % last_name.title())

    if age:

    print("Age :%d" % age)

    if favorite_language:

    print("Favorite language : %s" % favorite_language)

    desc_person('brian','kernighan',favorite_language='C')

    desc_person('ken','thompson',age=22)

    #接受任意数量的参数

    def example_function(num_1,num_2,*nums):

    sum = num_1+num_2

    #Then add any other numbers that were sent.

    for num in nums:

    sum = sum + num

    # Print the results.

    print("The sum of your numbers is %d." % sum)

    example_function(1,2)

    example_function(1,2,3)

    example_function(1,2,3,4)

    example_function(1,2,3,4,5)

    12、.map函数:需要对列表中每个元素做一个相同的处理,得到新列表

    #map

    def add(a,b):

    return a + b

    lst = [1,2,3,4,5]

    print(map (add,lst,lst))

    print(list(map(add,lst,lst)))

    #filter

    def is_even(x):

    return x % 2 == 0

    lst = [1,2,3,4,5]

    print(list(filter(is_even,lst)))

    #reduce函数对参数进行累积

    from functools import reduce

    def myadd(x , y):

    return x + y

    lst = [1,2,3,4,5]

    sum = reduce(myadd,lst)

    print(sum)

    13、 匿名函数lambda:可以返回一个匿名函数 表达式为:lambda<参数表>:<表达式>

    #lambda函数(匿名函数)

    answer = lambda x:x**2

    print(answer(5))

    #map(),filter() reduce()结合lambda表达式

    print(list(map( lambda x: x+x, [y for y in range(10)])))

    print(list(map( lambda a, b: a+b,[x for x in range(10)],[y for y in range(10)])))

    print(list(filter( lambda a: a & 1 ==0 , [x for x in range(10)])))

    print(reduce(lambda x,y : x*y , [a for a in range(1,10)]))

    14、time()函数

    #获取当前的时间戳

    time.time()

    localtime = time.localtime(time.time())

    print("本地时间为:",localtime)

    #格式化时间

    localtime = time.asctime(time.localtime(time.time()))

    print("本地时间为:",localtime)

    print(time.s)

    15、面向对象

    #力

    class Force:

    def __init__(self, x, y): #x,y方向分量

    self.fx, self.fy =x,y

    def show(self): #打印出力的值

    print("Force<%s,%s>" % (self.fx, self.fy))

    def add(self,force2): #与另一个力合成

    x = self.fx + force2.fx

    y = self.fy + force2.fy

    return Force(x,y)

    #类定义中的特殊方法

    def __str__(self):

    return 'Force<%r, %r>' % (self.x, self.y)

    def __mul__(sel,n):

    x, y = self.x * n, self.y *n

    return Force(x,y)

    def __add__(self, other):

    x ,y = self.x + other.x, self.y + other.y

    return Force(x, y)

    def __eq__(self, other):

    return(self.x == other.x) and (self.y == other.y)

    def __repr__(self):

    return 'Force({0.x!r},{0.y!r})'.format(self)

    #生成一个力对象

    f1 = Force(0,1)

    f1.show()

    #生成另一个力对象

    f2 = Force(3,4)

    #合成为新的力

    f3 = f1.add(f2)

    f3.show()

    class Student:

    def __init__(self, name, grade):

    self.name, self.grade = name, grade

    #内置sort函数只引用<比较符来判断前后

    def __lt__(self, other):

    #成绩比other高的,排在他前面

    return self.grade > other.grade

    #Student的易读字符串表示

    def __str__(self):

    return "(%s,%d)" % (self.name, self.grade)

    #Student的正式字符串表示,我们让它跟易读表示相同

    __repr__=__str__

    #构造一个Python list对象

    s = list()

    #添加到student对象到list中

    s.append(Student("Jack",80))

    s.append(Student("Jane",75))

    s.append(Student("Smith",82))

    s.append(Student("Cook",90))

    s.append(Student("Tom",70))

    print("Original:", s)

    #对list进行排序,注意这是内置sort方法

    s.sort()

    #查看结果,已经按照成绩排好序

    print("Sorted:",s)

    class Car:

    def __init__(self, name):

    self.name = name;

    self.remain_mile = 0

    def fill_fule(self, miles):

    self.remain_mile = miles

    def run(self, miles):

    print (self.name,end=':')

    if self.remain_mile >= miles:

    self.remain_mile -= miles

    print("run %d miles!" % (miles,))

    else:

    print("fuel out!")

    class GasCar(Car):

    def fill_fuel(self,gas): #加汽油gas升

    self.remain_mile = gas * 6.0 #每升跑6英里

    class ElecCar(Car):

    def fill_fuel(self, power): #充电power度

    self.remain_mile = power * 3.0 #每度电3英里

    gcar=GasCar("BMW")

    gcar.fill_fuel(50.0)

    gcar.run(200.0)

    ecar=ElecCar("Tesla")

    ecar.fill_fuel(60.0)

    ecar.run(200.0)

    try:

    print('try...')

    r = 10 / 'xyz'

    print('result:',r)

    except TypeError as e:

    print('TypeError:',e)

    except ZeroDivisionError as e:

    print('no error!')

    else:

    print('no error!')

    finally:

    print('finally...')

    print('END')

    以上就是我对Python这门课知识点的总结和理解,以后也会学习更多这方面的相关的来丰富自己。

    展开全文
  • 大家要持续关注哦,不定时更新Python知识哦!Python 作为一个近年备受好评的语言,它的一些优点让人无法忽视。Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。它的设计具有很强的可读性,...

    大家要持续关注哦,不定时更新Python知识哦!

    Python 作为一个近年备受好评的语言,它的一些优点让人无法忽视。Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。它的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。Python 还是交互式语言: 这意味着,可以在一个Python提示符,直接互动执行写程序。它 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。优点如此的多最终我选择了它。

    因为刚刚学,所以首先要先安装python环境。另外项目实战也是核心,如果你缺项目练习,去小编的Python交流.裙 :一久武其而而流一思(数字的谐音)转换下可以找到了,里面很多新教程项目

    1.Python环境搭建(windows环境)

    1.下载地址: https://www.python.org/downloads/windows/

    选择适合自己电脑的位数来下载安装包(ps :x86代表着32位系统的 ,64代表着64位系统的 )

    format,png

    2.勾选 Add python to PATH 添加路径需要注意,一定要勾选上!

    format,png

    3.不改变默认进行Next下一步

    format,png

    4.选择一个自己喜欢的安装位置

    点击Install开始安装

    format,png

    5.安装完毕,点击Close关闭

    若方框位置出现管理员字样则点击授权再关闭

    format,png

    6.验证:运行cmd

    进入到自己的安装目录下,运行语句:python -V

    若显示出Python对应版本则表示安装成功

    format,png

    2. python基本数据类型

    环境搭建成功后就开始了python学习。首先学习python的基本数据类型:共有七种

    (1) Number(数字)

    Python3 支持 int、float、bool、complex(复数)。

    在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。

    像大多数语言一样,数值类型的赋值和计算都是很直观的。

    内置的 type() 函数可以用来查询变量所指的对象类型。

    >>> a, b, c, d = 20, 5.5, True, 4+3j

    >>> print(type(a), type(b), type(c), type(d))

    (2) String(字符串)

    Python中的字符串用单引号(’)或双引号(")括起来,同时使用反斜杠()转义特殊字符。另外项目实战也是核心,如果你缺项目练习,去小编的Python交流.裙 :一久武其而而流一思(数字的谐音)转换下可以找到了,里面很多新教程项目

    字符串的截取的语法格式如下:

    变量[头下标:尾下标]

    索引值以 0 为开始值,-1 为从末尾的开始位置。

    加号 (+) 是字符串的连接符, 星号 (*) 表示复制当前字符串,紧跟的数字为复制的次数。实例如下:

    #!/usr/bin/python3

    str = 'zhangsan'

    print (str) # 输出字符串

    print (str[0:-1]) # 输出第一个到倒数第二个的所有字符

    print (str[0]) # 输出字符串第一个字符

    print (str[2:5]) # 输出从第三个开始到第五个的字符

    print (str[2:]) # 输出从第三个开始的后的所有字符

    print (str * 2) # 输出字符串两次

    print (str + "TEST") # 连接字符串

    (3) List(列表)

    List(列表) 是 Python 中使用最频繁的数据类型。

    列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

    列表是写在方括号[]之间、用逗号分隔开的元素列表。

    和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。

    列表截取的语法格式如下:

    变量[头下标:尾下标]

    索引值以 0 为开始值,-1 为从末尾的开始位置。

    加号(+)是列表连接运算符,星号(*)是重复操作。如下实例:

    #!/usr/bin/python3

    list = [ 'abcd', 786 , 2.23, 'demo', 70.2 ]

    tinylist = [123, 'demo']

    print (list) # 输出完整列表

    print (list[0]) # 输出列表第一个元素

    print (list[1:3]) # 从第二个开始输出到第三个元素

    print (list[2:]) # 输出从第三个元素开始的所有元素

    print (tinylist * 2) # 输出两次列表

    print (list + tinylist) # 连接列表

    List内置了有很多方法,例如append()、pop()等等。

    *注意:

    1、List写在方括号之间,元素用逗号隔开。2、和字符串一样,list可以被索引和切片。3、List可以使用+操作符进行拼接。4、List中的元素是可以改变的。

    (4)Set(集合)

    集合(set)是一个无序不重复元素的序列。

    基本功能是进行成员关系测试和删除重复元素。

    可以使用大括号 { } 或者set()函数创建集合,注意:创建一个空集合必须用set()而不是 { },因为 { } 是用来创建一个空字典。

    创建格式:

    parame = {value01,value02,...}

    或者

    set(value)

    实例:

    #!/usr/bin/python3

    student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}

    print(student) # 输出集合,重复的元素被自动去掉

    (5)Dictionary(字典)

    字典(dictionary)是Python中另一个非常有用的内置数据类型。

    列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

    字典是一种映射类型,字典用"{ }"标识,它是一个无序的键(key) : 值(value)对集合。

    键(key)必须使用不可变类型。

    在同一个字典中,键(key)必须是唯一的。

    #!/usr/bin/python3

    dict = {}

    dict['one'] = "1 - Python教程"

    dict[2] = "2 - Python工具"

    tinydict = {'name': 'demo','code':1, 'site': 'www.demo.com'}

    print (dict['one']) # 输出键为 'one' 的值

    print (dict[2]) # 输出键为 2 的值

    print (tinydict) # 输出完整的字典

    print (tinydict.keys()) # 输出所有键

    print (tinydict.values()) # 输出所有值

    以上实例输出结果:

    1 - Python教程

    2 - Python工具

    {'name': 'demo', 'site': 'www.demo.com', 'code': 1}

    dict_keys(['name', 'site', 'code'])

    dict_values(['demo', 'www.demo.com', 1])

    另外,字典类型也有一些内置的函数,例如clear()、keys()、values()等。

    注意:

    1、字典是一种映射类型,它的元素是键值对。

    2、字典的关键字必须为不可变类型,且不能重复。

    3、创建空字典使用 { }。

    (6)Tuple(元组)

    元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号(())里,元素之间用逗号隔开。

    元组中的元素类型也可以不相同:

    #!/usr/bin/python3

    tuple = ( 'abcd', 786 , 2.23, 'demo', 70.2 )

    tinytuple = (123, 'demo')

    print (tuple) # 输出完整元组

    print (tuple[0]) # 输出元组的第一个元素

    print (tuple[1:3]) # 输出从第二个元素开始到第三个元素

    print (tuple[2:]) # 输出从第三个元素开始的所有元素

    print (tinytuple * 2) # 输出两次元组

    print (tuple + tinytuple) # 连接元组

    开始接触这些有点记不住,但是要加油鸭。相信多练习一定会记住的

    3.分支/选择结构

    分支结构一共分为4类:单项分支,双项分支,多项分支,巢状分支

    (1)单项分支

    if 条件表达式:

    一条python语句...

    一条python语句...

    ...

    特征:

    if条件表达式结果为真,则执行if之后所控制代码组,如果为假,则不执行后面的代码组(:后面的N行中有相同缩进的代码)

    :之后下一行的内容必须缩进,否则语法错误!

    if之后的代码中如果缩进不一致,则不会if条件表达式是的控制,也不是单项分支的内容,是顺序结构的一部分

    if:后面的代码是在条件表达式结果为真的情况下执行,所以称之为真区间或者if区间、

    (2) 双项分支

    if 条件表达式:

    一条python语句...

    一条python语句...

    ...

    else:

    一条python语句...

    一条python语句...

    ...

    特征:

    1.双项分支有2个区间:分别是True控制的if区间和False控制的else区间(假区间)

    2.if区间的内容在双项分支中必须都缩进,否则语法错误!

    (2) 多项分支

    if 条件表达式:

    一条python语句...

    一条python语句...

    ...

    elif 条件表达式:

    一条python语句...

    一条python语句...

    ...

    elif 条件表达式:

    一条python语句...

    一条python语句...

    ...

    ...

    else:

    一条python语句...

    一条python语句...

    特征:

    1.多项分支可以添加无限个elif分支,无论如何只会执行一个分支

    2.执行完一个分支后,分支结构就会结束,后面的分支都不会判断也不会执行

    3.多项分支的判断顺序是自上而下逐个分支进行判断

    4.在Python中没有switch – case语句。

    实例-演示了狗的年龄计算判断:

    #!/usr/bin/python3

    age = int(input("请输入你家狗狗的年龄: "))

    print("")

    if age < 0:

    print("你是在逗我吧!")

    elif age == 1:

    print("相当于 14 岁的人。")

    elif age == 2:

    print("相当于 22 岁的人。")

    elif age > 2:

    human = 22 + (age -2)*5

    print("对应人类年龄: ", human)

    (4) 巢状分支

    巢状分支是其他分支结构的嵌套结构,无论哪个分支都可以嵌套

    # !/usr/bin/python3

    num=int(input("输入一个数字:"))

    if num%2==0:

    if num%3==0:

    print ("你输入的数字可以整除 2 和 3")

    else:

    print ("你输入的数字可以整除 2,但不能整除 3")

    else:

    if num%3==0:

    print ("你输入的数字可以整除 3,但不能整除 2")

    else:

    print ("你输入的数字不能整除 2 和 3")

    将以上程序保存到 test_if.py 文件中,执行后输出结果为:

    $ python3 test.py

    输入一个数字:6

    你输入的数字可以整除 2 和 3

    嗯,先暂时总结到这吧。在学习的过程中遇到了很多问题。有时候看着代码是对的。但是运行的时候还是报错。和老师的代码也对了好多遍。真不知道如何解决。心里乱乱的。就问了群里的助教和老师,老师助教很热心的帮助解决问题。并告诉易错点。心里暖暖哒。同事自己也总结了一些解决问题的方法。总体来说学习python还是很开心哒~

    展开全文
  • python心得1000字-python学习心得(一)

    千次阅读 2020-11-01 11:53:43
    ~~缘 起~~2017年11月,一群编程零基础的小伙伴们成立了Python学习小组,12名学员从此夜以继日地奔赴学习的征程。一个月过去了,从在屏幕上用最简单的语句打印出“Hello, Python; Hello, World”开始,我们逐步地学习...

    ~~缘 起~~

    2017年11月,一群编程零基础的小伙伴们成立了Python学习小组,12名学员从此夜以继日地奔赴学习的征程。一个月过去了,从在屏幕上用最简单的语句打印出“Hello, Python; Hello, World”开始,我们逐步地学习Python语法,学习操作列表、字典,学习For,While,If语句,现在遇到了第一个难点:类。通过研读、练习、交流、讨论,作为程序界的小白,我们逐步地理解了类的概念,明白了面向对象与面向过程编程的差异,以下是我们的小小心得,与大家分享:

    编程基本思想

    现实世界中,每个复杂的事务都可以拆分为多个组成部分,其中的每一部分就可称之为对象。比如要实现一个很大很复杂的项目,我们可以把项目拆分成不同的组成部分,然后分别对不同部分通过编程实现,最终再把各个部分组装起来完成整个项目。这让我们能够从整体上来控制项目,从而让程序开发更有效。

    比如汽车制造,汽车厂所做的仅仅是各个部件的组装和匹配,而各个部件的生产是由相对专业的厂商完成。如果需要研发新型号汽车,整车厂所考虑的是如何对各个新式的零部件进行新的组装和匹配,而不是从头到尾重新生产一辆汽车。

    面向对象的编程

    VS

    面向过程的编程

    面向过程编程是针对一个需求的具体实现过程,但是对于大型项目的复杂需求,一步一步的做,这种编程效率显然是低下的。

    面向对象编程则是对项目进行拆分后(一般按照功能拆分),分别实现,再将各个对象组装起来。因此简单的小程序使用面向过程方法编程更适合。面向对象的编程特性是易维护(可读性高),效率高,质量高(重用性),扩展性好(高内聚,低耦合)。

    对象

    通俗的讲,对象就是事物,一个公司、一个部门、一个人,甚至一本书都可以是一个对象,程序员可以自由决定把什么作为对象。

    比如eHR系统,需要对组织架构,员工进行管理,所以使用的对象可能是公司,部门,岗位,员工,等等。对象可大可小,可复杂也可简单,如果仅仅是做一个考勤系统,员工这个对象一定要比eHR系统中的员工对象简单。

    现实世界中,类代表一组有共同特性的事物,把不同对象之间的共性抽象出来,就形成类的概念。比如说男人、女人可以抽象成人这个类;处长、秘书可以抽象成员工类。至于类如何去抽象,粒度的粗细,这是一个需要在学习和实践中摸索的过程。

    实例

    以下是一个实例,大家体会一下:

    1. 定义父类:

    class Employee:

    def __init__(self, name, age): #抽象员工共性(名字,年龄)

    self.name = name

    self.age = age

    def signON(self):

    print(self.name+" sign on.") #抽象签到的动作

    def work(self):

    print(self.name + " on work.") #抽象工作的动作

    2. 继承出子类:

    class MEmployee(Employee): #继承父类的共性

    def __init__(self, name, age):

    super().__init__(name, age)

    def work(self): #重写子类的方法(抽象出从事管理岗位工作的动作)

    print(self.name + " on manager_work.")

    3. 继承出第二个子类:

    class TEmployee(Employee):

    def __init__(self, name, age, devLanguage): #继承父类的共性,增加语言的属性

    super().__init__(name, age)

    self.devLanguage = devLanguage

    def work(self): #重写子类的方法(抽象出从事技术岗位工作的动作)

    print(self.name + " on technology_work.")

    def showLanguage(self): #增加子类的方法(抽象出会某种编程语言的动作)

    print("use "+self.devLanguage+" language.")

    在上面的程序中,我们先定义了一个父类:包含员工的姓名、年龄等一般特性,可以执行签到、工作这两类动作。在第一个子类中,管理层在前面一般特性的基础上,执行管理工作;在第二个子类中,作为一般员工在前面一般特性的基础上,执行技术工作,从事编程。

    好的,今天就先分享到这里,小编去敲代码了,下期继续聊。

    展开全文
  • 这两天python cgi编程,挺好玩的 跟大家分享一下:目标:创建一个cgi脚本 接收来访者的参数步骤:创建一个cgi服务的根目录(随便创建,然后在终端或者cmd下切换到该目录下)python2.x的httpserver启动:python -...
  • Python大一学习感想

    千次阅读 热门讨论 2021-09-07 08:58:29
    在这个不熟悉的环境,一切都是那么多陌生,心里难免觉得以后的路可能会很难走,当我在学习Python时,因为这也是我刚接触到Python,自身本来也是个电脑小白,觉得Python这门课程会很难,很难上手 二、对Python...
  • 《Learning Python》是一本由Mark Lutz著作,O'Reilly Media出版的Paperback图书,本书定价:USD 54.99,页数:1216,特精心从网络上整理的一些读者的读后感,希望对大家能有帮助。《Learning Python》精选点评:●...
  • 大学生心得体会1000字

    千次阅读 2020-12-20 10:38:53
    大学生心得体会1000字【篇一:大学生读书心得1000字3篇】大学生读书心得1000字一:大学生读书心得体会发现已经好久没有拿起笔写东西了,记忆中文字是内心最好的诠释,是因为忙而没有时间写东西吗?其实不然!每次都...
  • 这次学python时,里面也是有类,但是不能老是用函数啊。 现在都提倡用面向地象,硬着头皮去模仿,先是模仿类调用,再是类成员调用,发现直接调用,竟然不能识别,一直报未定义。 搜类成员调用成员函数,一查,才知道...
  • 在这学期中,通过选修python课上的基础知识学习,我对python也有了一定的认识。而且,在字符串上的处理,python相对于c语言也是给程序员极大的便利。而python不仅如此,它的库也很多,正因为它强大的库,让编程变得...
  • 看完体验之后本人觉得比较满意,于是购买了后面的课程,一个月过去了,python基础课程也完了,接下来我分享一下我在学习过程中的所思所想所悟。风变编程的python与以往的网络教程不同,不是看视频做笔记的...
  • python培训感想800

    2021-12-21 19:07:52
    前些日子用python基于prometheus开发了一个vsphere volume卷监控的exporter,于是跟vsphere的api(pyvmomi)接口打上了交道,开发的过程中你会发现pyvmomi的接口返回的对象好多列表类型的,当你取其中一个对象的时候...
  • 关于我第一次上编程感想
  • Python学习心得体会

    千次阅读 2022-05-21 17:56:32
    到开学的一个月里我又去图书馆借了几本资料书,又去复习了下,并到文件操作部分,并且呢借着一本《用python学会办公自动化》去做了几个小脚本,当时就觉得python也就这样吧,没什么难度。但是又通过这几周启航的...
  • Python编程学习感受

    2021-12-23 15:23:38
    Hello, World”开始,我们逐步地学习Python语法,学习操作列表、字典,学习For,While,If语句,现在遇到了第一个难点:类。通过研读、练习、交流、讨论,作为程序界的小白,我们逐步地理解了类的概念,明白了面向...
  • 写爬虫真不是件简单的事学习了大概两个月的爬虫,渐渐感觉到写爬虫并不是件简单的事,有诸多的考虑,先简单的记录一下,有时间分部分做示例一、学习爬虫知识我是从python3开始做爬虫的,首先,python3的语法必须知道...
  • 1、找到自己兴趣的方向,并且结合市场需求进行选择 Python的应用范围 测试 运维 web 人工智能 大数据 爬虫及数据分析 办公自动化 2、学习过程中一定要勤加练习,并且尝试去使用学习过的内容实现一些简答的...
  • Python学习总结

    热门讨论 2021-09-07 08:41:54
    关于在大一这一年的Python经历及感想 上学期(初识Python):在大学上半期,我刚刚踏入这大学校园,对这个陌生的环境还不是很了解,然后又懵懵懂懂的接触了我以前都不敢想的程序设计,接触Python之后我慢慢的感觉到...
  • 回顾本学期的python学习中,我从一名对编程一无所知的小白,成为一名刚入门的程序猿。首先,我要感谢我的任课老师娄嘉鹏老师,是他引领我走进了python的大门。同时,我也很感谢信安协会的学长学姐们,他们每周都会给...
  • 【摘要】在这个科学技术高速发展的时代,越来越多的人都开始选择学习编程软件,那么首先被大家选择的编程软件就是python,也用在各行各业之中,并被大家所熟知,所以也有越来越多的学习者关注python的实操问题,今天...
  • 谈谈对Python感想

    2020-12-12 10:24:38
    我学会了使用Python的最早是因为我兴趣的是人工神经网络。Python有一个安图书馆neurolab非常有用。事实上,我是一个新手,我是一个初学者。我写这篇文章的回顾我所到的东西,并鼓舞我稍微懒惰精神。我不能停止学习...
  • python】基础学习心得总结(一)

    千次阅读 2020-11-26 05:23:50
    本文将简单阐述一些基本的python知识点,大多是本人在学习过程中的心得体会。简单常用的编程概念和思想将不再描述。若有理解错误,还望指正。一、python运行,调试python和相关软件可以在官网下载。本文采用的版本是...
  • Python学习过程中的收获与心得

    千次阅读 2021-09-06 17:20:39
    学习,练习自己兴趣的领域。尽量让自己在学习过程中少走弯路。 1.笔记要简洁扼要 笔记并非必需品,一大段一大段的摘抄代码远远不如在电脑上自己亲手写一遍。大段摘抄代码的后果就是浪费了时间,消磨了兴致,.....
  • 关于python爬虫的实验论文怎么写叙述和描写为主,但往往兼有抒情和议论,是一种形式多样,笔墨灵活的文体,也是最广泛的文体。论文写作,是把自己的亲身感受和经历通过生动、形象的语言,描述给读者。论文...论文...
  • Python的介绍Python是一种高级动态、完全面向对象的语言,函数、模块、数字、字符串都是对象,并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python是一种计算机程序设计语言(解释型语言),...
  • 一开始就是因为学校开了这门,想着结合老师教的和自己网上自学的结合起来,起来,感觉会更快一点。同时也就感觉自己在期末考试可以拿到更高的绩点,好让自己在如果有保研的机会的话,可以前期不会太伤。但是后来...
  • 学习Python的过程中,我感到迷茫不知道自己该从什么地方入手,我在学习Python之前了解过这门语言,也知道Python有很多的学习方向,比如说数据采集方向(爬虫),或者Web开发方向,也可能是最近特别火热的人工智能...
  • Python学习路线汇总,必看

    千次阅读 2022-04-13 11:23:11
    网上到处都是9块9零基础成为编程大神,朋友圈Python广告下面乌泱泱的全是评论,连少儿都开始编程,代码都从娃娃抓起... 有时候我会好奇,真有这么多人编程吗?但最近看到我身边一个C盘满了只知道换新电脑的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 15,737
精华内容 6,294
关键字:

python课学后感1000字