Python 之关键字和实例

0.0682018.04.09 20:10:28字数 1073阅读 2671

一、python关键字

Screen Shot 2018-04-09 at 19.50.17.png

\1. and :表示逻辑判断 【与】

a = '1'
b = 1
if a and b:
print('Hello Python')

2.as :单独没有实际意思,常与with组合使用,with...as 例如:

with open('./test.txt', 'w') as f:
f.write('人生苦短, 我用python')

3.assert : 表示断言, assert语句用来声明某个条件是真的。例如,如果你非常确信某个条件为真,而你想要检验这一点,并且在它非真的时候引发一个错误,那么assert语句是应用在这种情形下的理想语句。当assert语句失败的时候,会引发一AssertionError。

a = 2
assert a >= 2
print(a)
a = 1
assert a >= 2
print('a')

Screen Shot 2018-04-09 at 20.17.11.png

4.break : 跳出循环体 与continue比较记忆 continue跳出本次循环。 例如 break

list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for i in list:
if i == 6:
break
print(i)

Screen Shot 2018-04-09 at 20.22.53.png

continue:

list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for i in list:
if i == 6:
continue
print(i)

Screen Shot 2018-04-09 at 20.24.52.png

5.class : 创建类

class Student():
def __init__(self, name, age):
self.name = name
self.age = age def info(self):
print('name:', self.name)
print('age:', self.age) stu = Student('didi', 20)
stu.info()

结果:

Screen Shot 2018-04-09 at 20.48.58.png

6.continue : 跳出本次循环 不终止循环 参考4 break

7.def : 定义函数

def return_max(x, y):
return max(x, y)
print(return_max(3, 5))

8.del : 删除

list = [1, 2, 3, 4, 5, 6, 7]
del list[1]
print(list)
del list
print(list)

结果:

Screen Shot 2018-04-09 at 20.54.56.png

9.elif : 和if配合使用的,if语句中的一个分支用elif表示。

num = int(input('请输入一个数:'))
if num > 0:
print(num,' 是正数')
elif num == 0:
print(num, '等于0')
else:
print(num, '是负数')

10.else : 参照9 elif, else 还可以和try 一起使用用来捕捉异常,参照下面 try的用法

  1. except :和try一起使用,用来捕获异常。
try:
raise EOFError
except EOFError:
print('EOFError异常。')

和else一起使用

list = [1, 2, 3, 4, 5, 6, 7, 8]
try:
list.append(100)
print(list[8])
except IndexError:
print('数组越界')
else:
print(list)

和finally一起使用:

list = [1, 2, 3, 4, 5, 6, 7, 8]
try:
list.append(100)
print(list[8])
except IndexError:
print('数组越界')
finally:
print(list)

12.exec : exec语句用来执行储存在字符串或文件中的Python语句。例如,我们可以在运行时生成一个包含Python代码的字符串,然后使用exec语句执行这些语句。

str = 'print(\'Hello World\')'
exec(str)

13.finally : 始终模块里的代码始终都会执行,参照11 excep

14.for 循环遍历 乘法口诀

for i in range(1, 10):
for j in range(1, i + 1):
print('{} * {} = {} '.format(j, i ,j * i), end = '\t')
print('')

15.from : 导入相应的模块,用import或者from...import

16.global : 定义全局变量

#定义全局变量:变量名全部大写
NAME = 'didi' #得到NAME
def get_NAME():
return NAME #重新设置NAME的值
def set_NAME(name_value):
global NAME
NAME = name_value print(get_NAME())
set_NAME('didididi')
print(get_NAME())

17.if : 条件语句参照11 elif

18.import :导入相应的模块,用import或者from...import

19.in : 查找列表中是否包含某个元素,或者字符串a是否包含字符串b。需要注意的是:不可以查看list1是否包含list2。

list1 = [1, 2, 3]
list2 = [1, 2, 3, 4, 5]
str1 = 'abcd'
str2 = 'abcdef'
print( str1 in str2) #True
print(1 in list1) #true
print(list1 in list2) #False

20.is : Python中的对象包含三要素:id、type、value

其中id用来唯一标识一个对象(id 就相当于内存地址 指针),type标识对象的类型,value是对象的值, is判断的是a对象是否就是b对象,是通过id来判断的, is not 用于判断两个对象不相等。==判断的是a对象的值是否和b对象的值相等,是通过value来判断的。

list1 = [1, 2, 3, 4, 5]
list2 = [1, 2, 3, 4, 5]
list3 = list2
print(id(list1))
print(id(list2))
print(id(list3))
  1. lambda : 匿名函数,提升代码的简洁程度,便于阅读
f = lambda : 'Hello World !'
f() max_value = lambda x, y = 2: max(x, y)
print(max_value(5))

22.nonlocal : 关键字nonlocal的作用与关键字global类似,使用nonlocal关键字可以在一个嵌套的函数中修改嵌套作用域中的变量。

def foo1():
num = 2
def foo2():
num = 5
foo2()
print('num = ', num) foo1() # num = 2
def foo1():
num = 2
def foo2():
nonlocal num
num = 5
foo2()
print('num = ', num) foo1() # num = 5

22.not : 表示逻辑‘非’

23.or : 表示逻辑‘或’

24.pass : pass的意思就是什么都不做。相当于占位:当我们写一个软件的框架时,具体方法和类来不及实现,就在方法和类里面加上pass,这样编译起来就不会报错,如下:

def test():
pass # 不加pass 会报错

25.print : 打印函数,python3.0之后 print() 要加括号

26.raise : raise 抛出一个异常,一旦执行raise语句,后面的代码就不执行了,可以结合try 使用

try:
raise EOFError
print('Hello World !') #不执行
except EOFError:
print('EOFError 错误') # 打印 EOFError错误

27.return : 跳出函数或者跳出的同时返回一个值

28.try : 补货异常使用,参照11 except的使用

29.with : 不单独使用,和as一起使用,参照 2 as

30.yield : 要理解yiled还需要理解生成器,而要理解生成器,首先需要理解迭代器。

迭代器:所有你可以用在for...in...语句中的都是可迭代的:比如lists,strings,files...因为这些可迭代的对象你可以随意的读取所以非常方便易用,但是你必须把它们的值放到内存里,当它们有很多值时就会消耗太多的内存.

生成器:生成器也是迭代器的一种,但是你只能迭代它们一次.原因很简单,因为它们不是全部存在内存里,它们只在要调用的时候在内存里生成:

def test_yield(num):
for i in range(num):
print('============', i)
yield i * 2
# return i * 2
for i in test_yield(10):
print('------------------', i)
print(i, end='\t')
print('')

Python 之关键字和实例的更多相关文章

  1. python基础——类和实例

    python基础——类和实例 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都 ...

  2. 【类不类二】Python的类变量与实例变量

    在研究类的时候,难免会有很多疑问,C论坛和博客园高手如云(不知道是不是也美女如云), 搜到了这篇博文,是介绍Python的类变量和实例变量的 ! 刚好在下对self.***这种形式的实例变 量不是很理 ...

  3. Python基础-类变量和实例变量

    Python基础-类变量和实例变量 写在前面 如非特别说明,下文均基于Python3 大纲: 1. 类变量和实例变量 在Python Tutorial中对于类变量和实例变量是这样描述的: Genera ...

  4. static 和 final 关键字 对实例变量赋初始值的影响

    static 和 final 关键字 对实例变量赋初始值的影响 最近一直在看<深入理解Java虚拟机>,在看完了对象内存分配.Class文件格式之后,想深扒一下实例变量是如何被赋上初始值的 ...

  5. python(四)类变量和实例变量

    转载自[1] 实际这是个实例变量是否指向类变量的问题. python的类变量和实例变量,顾名思义,类变量是指跟类的变量,而实例变量,指跟类的具体实例相关联的变量,具体体现为self.x 等.实际要注意 ...

  6. 【转】基于Python的接口测试框架实例

    下面小编就为大家带来一篇基于Python的接口测试框架实例.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧   背景 最近公司在做消息推送,那么自然就会产生很多接口,测试 ...

  7. Python爬虫框架Scrapy实例(三)数据存储到MongoDB

    Python爬虫框架Scrapy实例(三)数据存储到MongoDB任务目标:爬取豆瓣电影top250,将数据存储到MongoDB中. items.py文件复制代码# -*- coding: utf-8 ...

  8. Python连接MySQL的实例代码

    Python连接MySQL的实例代码   MySQLdb下载地址:http://sourceforge.net/projects/mysql-python/ 下载解压缩后放到%Python_HOME% ...

  9. redis安装 phpredis Jedis 扩展的实现及注意事项,php,java,python相关插件安装实例代码和文档推荐

    redis安装 phpredis Jedis 扩展的实现及注意事项,php,java,python相关插件安装实例代码和文档推荐 1.Redis 官方网站下载: http://redis.io/dow ...

随机推荐

  1. [SourceTree] - 使用内置 PuTTY 克隆项目出现 fatal: early EOF 问题之解决

    背景 使用 PuTTY 克隆 Asp.Net Core 项目失败. 错误 git -c filter.lfs.smudge= -c filter.lfs.required=false -c diff. ...

  2. jpa简单demo调试druid

    Druid连接池配置见https://www.cnblogs.com/blindjava/p/11504524.html pom <dependency> <groupId>m ...

  3. yzoj 2377 颂芬梭哈 题解

    题意 Alice 和 Mukyu 最近偶然得到了一本写有一种叫做梭哈的扑克游戏的规则的说明书(名为<C████████nd>,中间部分被涂掉了),据其所述,梭哈是一种使用黑桃.红心.梅花. ...

  4. 小程序的目录结构/配置介绍/视图层wxml数据绑定/双线程模型/小程序的启动流程

    安装好微信小程序开发软件,创建项目 小程序文件结构和传统web对比 结构 传统web 微信小程序 结构 HTML WXML 样式 CSS WXSS 逻辑 Javascript Javascript 配 ...

  5. PAT(B) 1068 万绿丛中一点红(C)

    题目链接:1068 万绿丛中一点红 (20 point(s)) 参考博客:1068. 万绿丛中一点红(20) i逆天耗子丶 题目描述 对于计算机而言,颜色不过是像素点对应的一个 24 位的数值.现给定 ...

  6. k8s 启动pod的问题

    版本: k8s 1.5 docker 1.3 CentOS 7.6 使用命令 kubectl get pods输出no resources.解决方法是修改 apiserver 的配置文件 vim /e ...

  7. C++ 相关问题记录

    目录 编译链接 使用初始化和使用赋值时,调用的函数不同:使用 auto_ptr() 时可能会出现编译错误 宏定义不受命名空间的约束 Switch-case 中不能定义变量 技巧/注意项 多层继承中基类 ...

  8. flutter从入门到精通二

    静态方法和静态属性(static): 通过static修饰的方法和属性称为静态方法和静态属性,注意静态方法和静态属性只能通过类名访问,不能通过对象访问. 静态方法不能访问非静态的属性和非静态方法,反正 ...

  9. typeAliasesPackage 属性的作用

    applicationContext.xml <?xml version="1.0" encoding="UTF-8"?> <beans xm ...

  10. 在论坛中出现的比较难的sql问题:39(动态行转列 动态日期列问题)

    原文:在论坛中出现的比较难的sql问题:39(动态行转列 动态日期列问题) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了. 所以,觉 ...