python基础篇-启动篇(一)

  • 开始学习python个人记录笔记使用,如果有能帮助到他人的地方也算好事

python零基础开始学习,首先在网上找到慕课网免费学习资料,看了“初始pytho”和“python进阶”,大多是文字概念,了解下基础比较好,以下是记录的笔记。后在网上找到一些学习视频打算后续开始看视频,想看视频的可以下载看看https://blog.csdn.net/ygcxydzx/article/details/79483571(转载地址)

  • 笔记记录

1、List

定义:Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。

以方括号“[]”将集合所有元素包括在内,python是动态语言,所以list中包含的元素并不要求都必须是同一种数据类型。例如

L = ['Adam',95.5,'Lisa',85,'Bart',59],其中包含name、score字符串和浮点型

访问方式:

索引:按照索引正序方式访问,和C语言一致 print L[0] >>>Adam ;

           按照索引逆序方式访问,L[-2] 代表倒数第二个 >>> Bart [-1]倒数第一个元素;

使用索引时,千万注意不要越界

增删改元素:

append()总是把新的元素添加到 list 的尾部,例如L.append('Abc')

insert(pos,data)它接受两个参数,第一个参数是索引号,第二个参数是待添加的新元素,例如L.insert(1,'Efg')向list中第二个元素位置插入‘Efg’

pop()方法总是删掉list的最后一个元素,并且它还返回这个元素;也可以填写要删除的索引号,例如L.pop(2),删除第三个位置上的元素

替换即修改,指定元素位置进行修改,L[1]=90,将原有95.5->90,和访问对应支持正序、逆序

2、tuple

创建tuple和创建list唯一不同之处是用( )替代了[ ],一旦创建完毕,就不能修改

不支持增删改,只能访问通过T[0]、T[1]访问第一、二元素。注意:单元素 tuple 要多加一个逗号“,”例如t = ('Adam',),因为()可以为tuple也可以为运算符

虽然tuple不可变,但是可将list作为tuple的元素,对list进行增删改操作是可以的,因为变的是list,例如t = ('a', 'b', ['A', 'B']),元素2就是一个list,l=t[2],l[0] l[1]是允许操作的

3、dict

英文词典,顾名思义通过key-value形式存储;

特点:dict的第一个特点是查找速度快,数据量不应速度,占用内存大,而list随数据增多而变慢,但占用内存小

dict的第二个特点就是存储的key-value序对是没有顺序的!由于dict是按 key 查找,所以,在一个dict中,key不能重复。

使用花括号{},将所有元素包含在内d = {'Adam': 95,'Lisa': 85,'Bart': 59}

访问方式:一、list使用索引范围,dict使用key访问,例如d['Bart'],输出是value  59

                  二、get(key),python提供get方法,例如d.get('Bart'),输出value同样是  59,不存在‘Bart’则数据None

更新:

如果是没有的数据,按照key-value存储,如果已有的key则进行更新

d['Paul'] = 72

遍历:

使用for循环可以遍历 dict 的 key:例如:

for key in d:
     print key >>>'Adam'  'Lisa'  'Bart' 

4、set

set与dict的区别在于它没有value,当程序使用场景不要value只关心key时就可以使用set,同样它是无序,快,消耗内存

使用类似list,s = set(['Adam', 'Lisa', 'Bart', 'Paul'])

访问:

访问 set中的某个元素实际上就是判断一个元素是否在set中,'Bart' in s 返回true,false

遍历:

与dict一致,但是set没有value

更新:

set的add()和remove()

add()已存在的key不会报错,但是remove()不存在的key会报错,所有remove需要先判断 if key in s来删除

5、if-elif-else

if很好理解,注意在条件后加冒号':',一个条件下的执行语句缩进度一致

6、for in

1. 有序集合:list,tuple,str和unicode;
2. 无序集合:set
3. 无序集合并且具有 key-value 对:dict

对有序集合进行遍历:List、tuple,直接遍历出来元素

对无序集合进行遍历:dict、set,遍历出来的是key

L = ['Adam', 'Lisa', 'Bart']
for name in L:
    print name

7、while

和 for 循环不同的另一种循环是 while 循环,while 循环不会迭代 list 或 tuple 的元素,而是根据表达式判断循环是否结束

8、break continue

break:退出整个循环;continue:退出当前循环

9、函数

返回多值:

python函数可以返回多个值,而实际上返回值是一个tuple类型,多个变量可以同时接收一个tuple,按位置赋给对应的值.

默认参数:

函数的默认参数的作用是简化调用,你只需要把必须的参数传进去;由于函数的参数按从左到右的顺序匹配,所以默认参数只能定义在必需参数的后面。默认参数在不传入时即为默认值,如果传入则为实际传入值。

可变参数:

如果想让一个函数能接受任意个参数,可变参数的名字前面有个 号 *args 可使用 for a in args

10、切片

切片相当于将原有的List、Tuple赋值到另一个List、Tuple上

L[0:3] 表示,从索引0开始取,直到索引3为止,但不包括索引3。如果第一个索引是0,还可以省略

L[:] 只用一个 : ,表示从头到尾

L[::2] 第三个参数表示每N个取一个,上面的 L[::2] 会每两个元素取出一个来,也就是隔一个取一个

倒序切片:记住倒数第一个元素的索引是-1。倒序切片包含起始索引,不包含结束索引

11、迭代:

注意: 集合是指包含一组元素的数据结构,我们已经介绍的包括:
1. 有序集合:list,tuple,str和unicode;
2. 无序集合:set
3. 无序集合并且具有 key-value 对:dict

迭代永远是取出元素本身,而非元素的索引,可通过 enumerate() 函数获取索引

索引迭代也不是真的按索引访问,而是由 enumerate() 函数自动把每个元素变成 (index, element) 这样的tuple,再迭代,就同时获得了索引和元素本身,例如:

for index, name in enumerate(L):
    print index, '-', name

迭代dict的value:

用 for 循环直接迭代 dict,可以每次拿到dict的一个key。如果想迭代value的话,可通过values() 方法和itervalues()方法

1.values() 方法实际上把一个 dict 转换成了包含 value 的list。

2. 但是 itervalues() 方法不会转换,它会在迭代过程中依次从 dict 中取出 value,所以 itervalues() 方法比 values() 方法节省了生成 list 所需的内存

迭代dict的key和value:

和 values() 有一个 itervalues() 类似, items() 也有一个对应的 iteritems(),iteritems() 不把dict转换成list,而是在迭代过程中不断给出 tuple,所以, iteritems() 不占用额外的内存。

for key, value in d.items():
...     print key, ':', value

12、生成列表

 

[x * x for x in range(1, 11) if x % 2 == 0]条件判断表达式

[x*100 + y*10 + z for x in range(0, 10) for y in range(0, 10) for z in range(0,10) if x == z and x != 0]多层表达式

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值