Python学习心得

1. Python是动态语言 ,变量是不需要指定类型的 a = 'com' a = 123

2. Python的格式:行和缩进

学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号{}来控制类,函数以及其他逻辑判断。python 最具特色的就是用缩进来写模块。

标准


3. Python数据类型:

        ● Numbers(数字):int(有符号整型)long(长整型[也可以代表八进制和十六进制])float(浮点型)complex(复数)

        ●String(字符串):str='Hello World!'printstr   printstr[2:5]

        ●List(列表):list=['runoob',786,2.23,'john',70.2]    printlist[1:3]

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

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

        ●Tuple(元组):tuple=('runoob',786,2.23,'john',70.2)    

                元组用"()"标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表

        ●Dictionary(字典):tinydict= {'name':'john','code':6734,'dept':'sales'}

                    tinydict.keys()    # 输出所有键         结果:  ['dept','code','name']

                    tinydict.values()# 输出所有值          结果:['sales',6734,'john']

                字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。

                两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

                字典用"{ }"标识。字典由索引(key)和它对应的值value组成。


          Python数据类型转换:int(x)    str(x)      字符串直接加上数字是不行的,需要先转换

4. Python的日期和时间:

          每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示。

          时间戳单位最适于做日期运算。但是1970年之前的日期就无法以此表示了。太遥远的日期也不行,UNIX和Windows只支持到2038年。

          需要的时候需要仔细研究,有各式各样的格式和函数

5. Python函数:

          函数代码块以def关键词开头,后接函数标识符名称和圆括号()

          任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。

          函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。

          函数内容以冒号起始,并且缩进。

          return [表达式]结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。

         参数

              以下是调用函数时可使用的正式参数类型:必备参数    关键字参数    默认参数    不定长参数

         def printinfo(name,age):

                print "Name: ",name;

                print "Age ",age;

                return;

          #调用printinfo函数

          printinfo(age=50,name="miki")        说明:这样是关键字参数调用,顺序可以任意调换,如果是必备参数的写法则 printinfo("miki",50)

          其他参考:http://www.runoob.com/python/python-functions.html

          另外说明:函数本质也是对象,被赋值的变量

6.  Python-类变量,成员变量,静态变量,类方法,静态方法,实例方法,普通函数

       (1)类变量:

7. 装饰器:包装函数——假设我们要增强now()函数的功能,比如,在函数调用前后自动打印日志,但又不希望修改now()函数的定义,这种在代       码运行期间动态增加功能的方式,称之为“装饰器”(Decorator)。

    python 的 Decorator在使用上和Java/C#的Annotation很相似,就是在方法名前面加一个@XXX注解来为这个方法装饰一些东西。但是,Java/C#的Annotation也很让人望而却步,太TMD的复杂了,你要玩它,你需要了解一堆Annotation的类库文档,让人感觉就是在学另外一门语言

    无参数类型:

    importfunctools

    def logger(func):

              @functools.wraps(func)

              def inner(*args,**kwargs):#1

                     print"Arguments were: %s, %s"%(args, kwargs)

                     return func(*args,**kwargs)#2

              retur ninner

   有参数类型:

   importfunctools

   def log(text):

          def decorator(func):

                   @functools.wraps(func)

                    def wrapper(*args,**kw):

                            print'%s %s():'%(text, func.__name__)

                            return func(*args,**kw)

                     return wrapper

           return decorator


     *args要么是表示调用方法大的时候额外的参数可以从一个可迭代列表中取得,要么就是定义方法的时候标志这个方法能够接受任意的位置参数

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 基础1.r''表示''内部的字符串默认不转义2.'''...'''表示多行内容3. 布尔值:True、False(...
    neo已经被使用阅读 1,714评论 0 5
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,853评论 18 139
  • Python进阶框架 希望大家喜欢,点赞哦首先感谢廖雪峰老师对于该课程的讲解 一、函数式编程 1.1 函数式编程简...
    Gaolex阅读 5,519评论 6 53
  • 我有个仿佛遥不可及的愿望,无数次在梦里遇见,梦醒却碎落一地——我想环游世界。 可能只能是梦吧,我想。除了三...
    陌屿先生阅读 285评论 2 3
  • 与其说我们在长大,不如说父母在老去,其实,我们都只是在成长。上班途中,转过一个街角,一堆花圈围满的灵堂赤裸裸蜷缩在...
    子一君阅读 567评论 0 50