python基础语法记录

旧时模样 提交于 2020-01-19 14:00:04

为了更加系统的学习和了解Python,了解应用Python到完整项目的基本流程,自己又再一次学习了Python。

一、基础数据结构

1.字符串

字符串是由数字、字母、下划线组成的一串字符,并使用”“或‘’将其包裹。
可以使用方括号来截取字符串,格式为:[起始位置:结束位置:步长]。
常用字符串函数join(),len(),replace(),strip()等

  • Join()函数:连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串。
  • replace()函数:用于把字符串中指定的旧子字符串替换成指定的新子字符串,如果指定 count
    可选参数则替换指定的次数,默认全部替换。
    用法:S.replace(old,new[,count=S.count(old)])
  • strip()方法:用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。

2.列表

把逗号分隔的不同的数据项使用方括号括起来就创建了一个列表。
可以使用下标索引来对列表中的值进行访问和修改,同样你也可以使用方括号的形式进行元素的截取。
常用的列表函数:append(),extend(),pop(),remove(),reverse(),sort()等

  • extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。
  • append()函数只追加一个  pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
  • remove() 方法通过指定元素的值来移除列表中某个元素的第一个匹配项,如果这个元素不在列表中会报一个异常

3.元组

元组使用小括号,列表使用方括号。
元组与列表类似,不同之处在于元组的元素不能修改
常用的元组函数:len(),min(),max(),tuple()

4.字典

字典的每个键值对用*:*分割,每个对之间用逗号,分割,整个字典包括在{}中
不允许同一个键出现两次。键必须不可变,所以可以用数字、字符串、元组充当。
常用的**字典函数:get(),items(),keys()**等。

二、函数

1、函数定义
函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。
函数内容以冒号起始,并且缩进。
任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。
return[表达式]结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。
2、函数调用
使用函数名直接调用函数。
如果定义的函数存在参数,调用的时候一定要给出,否则会报错。

三、面向对象

Python是一门面向对象的语言
类、类变量、数据成员、方法重写、局部变量 、实例变量、继承、实例化、方法 、对象

  • 定义一个类格式:

    class 类名:
    方法列表

  • 创建对象,格式:
    对象名 = 类名()

对象和类都可以有自己的属性

  • 继承
    class 子类名(父类):
    方法列表(如果想要重写函数,直接写一个一模一样的函数即可,当然函数的实现不同)

  • 类的专有方法
    (1) init()构造函数,在生成对象时调用
    如: def __init__(self,val1,val2)
    (2)del()析构函数。释放对象时用

四、判断循环条件

1、python条件语句
if语句
格式:

  if xxx1:
  	事件1
  elif xxx2:
  	事件2
  else:
  	事件3

PS :Python里“elif”会用得比较多,因为Python没有switch…case语句
2、python循环语句
for循环和while循环。
循环控制语句可以更改语句执行的顺序。
支持break、continue语句控制循环。

五、生成器

由于设备内存的限制,列表容量有限,且如果仅仅只是访问列表前面几个元素,列表后面的元素则拜拜浪费空间。
所以,不必创建完整列表,列表元素可以按照某种算法推算出来,可以一边循环一边计算的机制,即生成器generator
1、迭代器
迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。
迭代器有两个基本的方法:iter()和next()
2、生成器
在python中,使用了yield的函数被称为生成器(generator)。
在调用生成器运行的过程中,每次遇到yield时函数会暂停并保存当前所有的运行信息,返回yield的值, 并在下一次执行next()方法时从当前位置继续运行。

生成器的定义

#列表
L= [x*2 for x in range(5)]
#生成器最简单的写法
G= (x*2 for x in range(5))
#生成器调用(调用几次生成几次)——但一般不用这样的写法
print(next(G))
#常用生成器
#通过生成器生成斐波那契数列(后一个数等于前两个数相加)
def fib(number): 
    n,a,b = 0, 0, 1    
   	while n < number:         
	   	yield b        #在循环体里用yield进行返回就是一个生成器
	   	a, b = b, a + b        
	   	n = n + 1  
#调用生成器(用循环体调用)
for i in fib(10):
	print(i)

生成器例子——batch生成器

#条件
dataset= [x for x in range(100)]
batch_size = 6(就是每次取出6个数)
#实现
def  get_batch(dataset,batch_size ):
	

参考:天学网人工智能学院学习视频

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!