Python学习笔记

之所以写学习笔记,一是可以督促自己坚持学习;二是自己记忆力不好,做了笔记,以后忘记了,方便复习巩固,所以,此笔记力求简洁,便于以后速查。三是当作对自己表达能力的一种锻炼。

虽然自己目前工作中用到脚本语言的机会不多,但是了解掌握一本脚本语言还是很有必要的。

本学习笔记,是基于Codecademy的Python教程的,可以算是对它的翻译和摘录。

Python是一门强大的,灵活的编程语言,可以用于网页开发,桌面图形用户接口,创建游戏等。Python是高级的,解释性的,面向对象的语言。

第一课  Python 语法

1.1 变量声明,非常简单,就像自然语言一样。如 a = 5,声明一个整形变量a,它的值是5。

1.2 数据类型:integer整型,floats浮点型,boolean布尔型(True/False,Python是大小写敏感的),strings字符串。

1.3 语句:Python中语句是用空白符分隔的。对于函数,需要用4个空格来缩进代码。

1.4 单行注释: #开头的行为注释,会被解释器忽略,不会影响代码的执行。

1.5 多行注释:当然可以每行都以#开头来达到此目的,更简便的方式是使用两队“三个双引号”。例如: """You can write this in multiple lines""".

1.6 算术运算符:六个算术运算符, + - * /  **指数运算符 %模运算符

第二课 字符串 Strings

2.1 字符串是另一个有用的数据类型。字符串常量是指用单引号('')或者双引号("")括起来的内容。

2.2 转义字符: 反斜杠\(backslash)   如 \'  ,  "I\'m a programmer\n".  

2.3 利用下标访问每个字符 如下图,"PYTHON"包含六个字符,下标从0开始,"PYTHON"[1] 得到的是 'Y'
                                                     +---+---+---+---+---+---+
                                                      | P  | Y |  T  | H | O | N |
                                                     +---+---+---+---+---+---+
                                                         0   1    2    3    4    5

2.4 可以对字符串操作的方法  
       len() 得到字符串长度 , 如len("PYTHON")
       str() 将内容转换成string, 如str(3.14)  
       lower() upper() 将字符串中所有字符变成小写/大写字符,如 "Python".lower()  "Python".upper()
     上面四个方法的操作方式不太一样,因为lower()和upper()是string类型特有的方法,只能用于string类型,所以需要用.操作符;而len()和str()可以用于很多对象,不止string。

2.5 控制台输出
       print "String to console" 可以将字符串显示到控制台。
       要打印多个字符串可以用"+"号直接连接字符串,对于字符串与非字符串要想连接起来,就需要将非字符串类型显式转换为字符串,这里要用到前面提到的str()方法。
       字符串一旦创建号,它的内容是不能改变的,如果想输出变化的内容怎么办呢?字符串格式化(string formatting)能够满足这个需求。
       字符串格式化使用%符号,如 print "My name is %s, I live in %s" % (my_name, my_city)
       需要用户输入内容时,用variable_name = raw_input('Prompt')   
       判断一个string是否只包含字母,用isalpha()   

第三课  条件判断和流程控制

3.1 比较运算符    1. Equal to (==)   2. Not equal to (!=)  3. Less than (<)  4. Less than or equal to (<=)   5. Greater than (>)  6. Greater than or equal to (>=)

3.2 逻辑运算符   1. and   2. or   3.not   优先级  not > and > or

3.3 条件语句  需要注意的是和函数体的缩进一样,这里的条件语句体要四个空格缩进

if EXPRESSION:
    do something
elif OTHER EXPRESSION:
    do something
else:
    do something

第四课  函数

函数是程序中一段用来执行某项特定任务的可以重复使用的代码

4.1 函数的好处
     
1.不同的函数处理不同的任务,可以更好地组织代码,如果代码中有错误,易于找到和修复bug。
      2.减少代码的冗余,增加复用性

      3.对象(objects)可以有自己的函数/方法。
      4.D.R.Y(Dont Repeat Yourself) 帮助我们更容易地避免重复自己。
      5.递归是一个强大的工具,它允许多次执行同一段代码甚至是调用自己。有些编程问题必须用递归才能解决。函数使实现递归成为可能。

4.2 函数的构成
      函数有三部分构成
      1.函数头:包括 def关键字,函数名字,参数列表和冒号。
      2.可选的文档字符串(docstring):有三重引号包括,可以有多行的用来描述函数功能的注释。
      3.函数体:函数执行的代码块。像if/elif/else语句一样,函数体需要四个空格缩进。
      下面是一个简单函数的例子:
       def spam():
              """Print Eggs! to console"""
              print "Eggs!"

4.3 变长参数(Splat)
      当不知道用户将传给函数多少个参数的时候,要用到变长参数,语法就是在参数名字前加一个*号。

4.4 模块(Module)
      一个模块是一个包含你可以使用的变量和函数定义的文件。当需要用到某个模块中的变量或者函数时,就需要import相应的模块 。
      1.普通导入:如import module1,这样当使用module1中的函数func时需要使用点号分隔符,如module1.func。
      2.函数导入:允许只导入某个模块中的某些特定的变量或者函数。语法如下:from module import function
      3.万能导入:语法 from module import *

4.5 内置函数
      1.max():参数可以是任意个数的,返回这些参数中的最大值。
      2.min():返回一系列参数中的最小值。
      3.abs():接收一个参数,返回它的绝对值。
      4.type():返回参数的类型信息。
      如:print type(42)       ==>  <type 'int'>
              print type(4.2)      ==>  <type 'float'>
              print type('spam')   ==>  <type 'unicode'>
              print type({'Name':'John Cleese'})   ==>  <type 'dict'>
              print type((1,2))    ==>  <type 'tuple'> 

第五课 列表和字典

列表是一种存储不同信息的数据类型。给列表赋值形式为: list_name = [item_1, item_2] , 一个列表可以为空:empty_list = []
可以通过下标访问列表中的每一个元素,list_name[index],列表下标是从0开始的。
列表的长度不必是固定的,随时都可以向列表尾部添加元素,可以用list_name.append(item)实现向列表尾部添加元素。可以用len来获得列表中元素的个数:len(list_name)子列表:如果想获得列表中的一部分,可以用如下语句:list_name[a:b],会得到从下标a开始到下标 b-1 的子列表。 如果子列表包含列表的第一个或者最后一个元素,那么可以不用指定相应元素的下标, 如my_list[:2] 表示前两个元素组成的子列表, my_list[3:] 表示从第四个元素开始一直到列表末尾的子列表

列表相关的函数

index()my_list.index("str") 返回"str"出现的第一个下标  

insert()my_list.insert(3, "str") 在my_list列表第3个下标位置插入"str",将之前下标位置为3及之后的元素依次后移一位。

remove()my_list.remove(VALUE) 将移除my_list第一个出现的VALUE。

如果想对列表中的每一个元素做一些操作,可以利用for循环: 

for variable in list_name:(注意此处的":"号)

       #do something

字典和列表类似,不过访问字典中的值是通过查找键(key)而非下标(index)。键(key)可以是字符串或者数字。和列表一样,字典也是可变的,这意味着字典在创建之后还是可以被修改的。这样的优点之一是在列表创建之后,我们可以用如下形式向字典中添加键/值对: dict_name[new_key] = new_value

空字典定义: empty_dicgt ={}

从字典中移除一个项目: deldict_name[key_name]


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值