Python 学习笔记之语法(一)

1、书写规范

Python对语法格式要求很严格,因此,在编写时一定要注意这些问题,比如下面就是这样的问题:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "D:\anzhuang\Anaconda\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 682, in runfile
    execfile(filename, namespace)
  File "D:\anzhuang\Anaconda\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 71, in execfile
    exec(compile(scripttext, filename, 'exec'), glob, loc)
  File "C:/Users/wt/.spyder2/template.py", line 12
    print isinstance(a, int)
    ^
IndentationError: unexpected indent

IndentationError: unexpected indent, 通过这错误提示,就可以明白在编写代码时,存在不严格的书写规范,而产生这样的错误。
原因是:可能tab和空格没有对齐,需要检查下tab和空格

2、可变和不可变对象

大部分Python对象是可变的,比如列表、字典、数组以及大部分用户定义的类型,而其他的如字符串和元组则是不可变的

3、异常处理

print float((1, 2)),会先如下错误

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "D:\anzhuang\Anaconda\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 682, in runfile
    execfile(filename, namespace)
  File "D:\anzhuang\Anaconda\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 71, in execfile
    exec(compile(scripttext, filename, 'exec'), glob, loc)
  File "C:/Users/wt/.spyder2/template.py", line 7, in <module>
    print float((1, 2))
TypeError: float() argument must be a string or a number

可能需要处理ValueError,因为TypeError可能意味着你的程序中存在合法性bug。要达到这个目的,在except后面加上异常类型即可

def attempt_float(x):
    try:
        return float(x)
    except (TypeError, ValueError):
        return x
print attempt_float((1, 2))

只需编写一个异常处理的元组即可捕获异常

如果不想处理异常,而只希望有一段代码不管try块代码成功与否都能被执行。但最后finaly即可达到目的

4、def 用法

def 是定义函数的,如下:菲波那切数列函数

>>> def fib(n):    # write Fibonacci series up to n
...     """Print a Fibonacci series up to n."""
...     a, b = 0, 1
...     while a < n:
...         print(a, end=' ')
...         a, b = b, a+b
...     print()
...
>>> # Now call the function we just defined:
... fib(2000)
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597

5、元组

元组(tuple)是一种一维的、定长的、不可变的Python对象序列,最简单的创建方式是一组以逗号隔开的值。

5.1 例子

5.1.1
tuple = 4, 5, 6
print tuple

输出结果:(4, 5, 6)

5.1.2
tup = tuple('sjkfhvhv')
print tup

输出结果:(’s’, ‘j’, ‘k’, ‘f’, ‘h’, ‘v’, ‘h’, ‘v’)
但在第一次测试时,出现了如下错误

python TypeError: 'str' object is not callable

不知是什么原因,在网上找了很多,网上说的有,变量名有Python api有重名的,但都不能解决。后来,重启下就好了,很无语。

5.2 元组方法

由于元组的大小和内存是不可修改的,其使用方法很少,用的最多是count方法,用于计算其指定值出现的次数

a = (1, 2 ,2, 3, 5, 6, 2, 2)
print a.count(2)

输出结果是:4

6 列表

跟元组相比,列表是可变长的,而且其内容是可以修改的,通过方括号或list函数来定义:

6.1 例子

6.1.1
tup = ('foo', 'bar', 'baz')
b_list = list(tup)
b_list[1] = 'jldaj;l'
print b_list
6.1.2
tup = ('foo', 'bar', 'baz')
b_list = list(tup)
b_list[1] = 'jldaj;l'
b_list.append('khalkhlk')
b_list.insert(1, 'hlakhl')
b_list.remove('foo')
print b_list

7 切片

通过切片标记法,你可以选取序列的类型(数组,元组,NumPy数组等)的子集,其基本形式由索引运算符以及传入其中的start:stop构成。
start或stop都是可以省略的,此时分别默认序列的起始和结尾处。

seq = [1, 2, 2, 3, 4, 6]
print seq[:5]

负数索引从索引的末尾开始切片:

seq = [1, 2, 2, 3, 4, 6]
print seq[-4:]

运行结果:[2, 3, 4, 6]

多个冒号的情况

seq = [1, 2, 2, 3, 4, 6]
print seq[::2]

第二冒号后面是步长。

Zip

将多个序列(列表)中的元素配对,从而产生一个新的元素列表

seq = [1, 2, 2]
seq2 = ['one', 'two', 'there']
print zip(seq,seq2)

运行结果:[(1, ‘one’), (2, ‘two’), (2, ‘there’)]
zip可以接受任意数量的序列,最总得到的元组数量由最短的序列决定。

seq = [1, 2, 2, 3]
seq2 = ['one', 'two', 'there']
print zip(seq,seq2)

运行结果:[(1, ‘one’), (2, ‘two’), (2, ‘there’)]

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python学习笔记PDF是一种学习Python编程语言的资料形式,它包含了Python的基本语法、数据类型、流程控制、函数、模块、面向对象编程、异常处理等相关内容。以下是关于Python学习笔记PDF的详细内容说明: 1. 基本语法Python学习笔记PDF中,首先介绍了Python的基本语法,例如如何定义变量、数据类型的使用(包括整数、浮点数、字符串、列表、元组、字典等),以及如何进行算术运算、比较运算和逻辑运算。 2. 流程控制:Python学习笔记PDF中,进一步介绍了流程控制的知识,包括条件判断和循环控制。条件判断主要是通过if语句进行判断执行不同的代码块,而循环控制则通过while循环和for循环来实现重复执行一段代码。 3. 函数:Python学习笔记PDF中,对函数的概念和使用进行了详细的解释。函数是代码的封装和组织方式,通过定义函数可以提高代码的重用性和可读性。学习者将了解到如何定义函数、调用函数、函数参数的传递以及函数返回值的使用。 4. 模块:Python学习笔记PDF中,介绍了Python中的模块和包的概念。模块是一组函数、类或变量的集合,以.py文件的形式存在,可以被其他程序调用和使用。学习者将学习如何导入模块、使用模块中的函数和变量。 5. 面向对象编程:Python学习笔记PDF中,对面向对象编程进行了系统的讲解。面向对象编程是一种以对象为基本单位的编程思想,通过定义类和对象,可以更好地组织和管理代码。学习者将了解如何定义类、创建对象、封装、继承和多态的使用。 6. 异常处理:Python学习笔记PDF中,对异常处理进行了介绍。异常是程序在运行过程中出现的错误,通过捕获和处理异常,可以更好地控制程序的执行流程并提高程序的健壮性。学习者将了解到如何使用try-except语句来捕获和处理异常。 总之,Python学习笔记PDF是一份全面而详细的学习Python编程语言的资料,通过学习该资料,学习者将获得扎实的Python编程基础,并能够运用Python进行简单的程序开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值