资讯专栏INFORMATION COLUMN

小李飞刀:飞呀飞呀python的骄傲放纵

Jacendfeng / 2802人阅读

摘要:虽然还在一个城市里,但是感觉有了更多的自己的时间。但是有土办法也有聪明的办法。所以更高级的抽象化是需要逐步适应的。最近已经开始刷啦,受小伙伴感染,后续也会开始写习题本啦

小小唠叨几句

这几天都没有更新,不代表我没有学习吖!
这两天都在忙着半夜,终于有了自己的小窝,一直住家里,突然搬出来心情还满奇特的。
虽然还在一个城市里,但是感觉有了更多的自己的时间。
比如现在是晚上十点,在家的话可能还有很多吵吵嚷嚷的声音(家里人口比较多),现在就自己安静的敲敲字学习什么的。
恩,还是要好好学习,纪念下搬出来后的第一次学习!
平安夜快乐!

开始认真学习!

先好好整理下这几天学习的成果,这几天在手机上持续看的教程,其实看的也不多啦,那就当温故而知新啦~
上一回合看完了函数,这几天认真看了下Python的高级特性

切片

取list或者tuple里面的部分值是很常见的操作。
但是有土办法也有聪明的办法。
土办法就是我挨个去写index的值呗。

print(list[0],list[1],list[2])

聪明一点,让我们来用循环。

r = []
n = 3
for i in range(n):
    r.append(L[i])

循环其实也很麻烦,所以Python提供了Slice切片操作符。

L[0:3] #这样就完成了前三项的选取

index索引有很多优秀的用法

当第一个索引为0的时候,就可以简略不写

L[:3]

支持倒数切片,注意,倒数第一个元素的索引是-1

L[-2:]

什么都不写的时候,显示整个list

L[:]

tuple也是list,所以也支持切片操作,操作结果为tuple,即不可变

字符串也可以看做list,支持切片操作,操作结果为字符串

自己做了一点无聊的小测试

迭代
如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration)。

其实刚开始写Python的时候非常不习惯,因为之前常用的C++,PHP,JS都是用下标来表示数据的位置,然后完成迭代。
所以更高级的抽象化是需要逐步适应的。

只要是可迭代对象,无论有无下标,都可以迭代,比如dict就可以迭代。
>>> d = {"a": 1, "b": 2, "c": 3}
>>> for key in d:
...     print(key)
...
a
c
b

只要是可迭代的朋友,for就能生效,emmm,但是首先,我们要确认这个朋友,它真的可以迭代吗?

>>> from collections import Iterable
>>> isinstance("abc", Iterable) # str是否可迭代
True
>>> isinstance([1,2,3], Iterable) # list是否可迭代
True
>>> isinstance(123, Iterable) # 整数是否可迭代,这个朋友无法迭代
False

然后对于下标循环,也是有一套解决方案的。

Python内置的enumerate函数可以把一个list变成索引-元素对,这样就可以在for循环中同时迭代索引和元素本身。
>>> for i, value in enumerate(["A", "B", "C"]):
...     print(i, value)
...
0 A
1 B
2 C

for循环里,同时引用两个变量,在Python里是很常见的

>>> for x, y in [(1, 1), (2, 4), (3, 9)]:
...     print(x, y)
...
1 1
2 4
3 9

最后,做个作业


困到真的要起飞啦,明天再继续咯~
恩,Python真有意思~
希望2019年可以顺利过上写Python为主的生活。

PS:最近已经开始刷leetcode啦,受小伙伴感染,后续也会开始写习题本啦~

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/42871.html

相关文章

  • 小李飞刀python我来做题啦

    摘要:好久不见最近都在忙年底的年会,还沉迷于学习统计学,教程还停留在基础语法。做题做题无论如何,数据结构还是很重要的,所以准备每天刷的题目啦。第一题移除元素给定一个数组和一个值,你需要原地移除所有数值等于的元素,返回移除后数组的新长度。 好久不见 最近都在忙年底的年会,还沉迷于学习统计学,python教程还停留在基础语法。但是仔细规划了下,还是要好好的瞄准目标前行。所以准备呢,实战走起来。 ...

    nevermind 评论0 收藏0
  • 小李飞刀python请与我一起愉快玩耍吧!

    摘要:属性,可以函数的名字在代码运行期间动态增加功能的方式,称之为装饰器。本质上,就是一个返回函数的高阶函数。比如,定义一个能打印日志的。接受函数作为参数,要放置在函数定义处。一个完整的的代码如下记录的是传入的的值,位置在嵌套内或者带参数的如下。 又是一段叨叨 如果总是担心能不能做到的话,那就干脆不要做了。想做的事情还是一往无前的好,什么都不想,就努力冲冲冲吧! 装饰器 因为函数是一个对象。...

    FuisonDesign 评论0 收藏0
  • 小李飞刀:磨刀霍霍继续向python

    摘要:例如做累加,函数生成整数序列,函数转换成。因为不能重复,所以中没有重复的。创建,需要提供一个作为输入合集。重复元素在中自动被过滤。添加元素,重复添加无效果删除元素 写在前面的一点罗里吧嗦小唠叨昨晚的python看到了快12点吧,然后进度相对来说还算满意,只能说一点点推进,庆幸自己的大学还是一个比较认真的小码农,现在捡起来还算比较得心应手(pia飞自己,算法什么的还没到好吗!)好好学习呗...

    txgcwm 评论0 收藏0
  • 小李飞刀python新年第一杀

    摘要:新年快乐年终于来了,突然觉得有点如释重负。大概年实在是太沉重了吧。年应该是要充满拼劲的一年希望可以成功转型自己喜欢的职业。开始认真学习了鸡血一波。建议类的属性名和实例属性名不要重复,否则类的属性名会覆盖。 新年快乐 2019年终于来了,突然觉得有点如释重负。大概2018年实在是太沉重了吧。2019年应该是要充满拼劲的一年!!!!希望可以成功转型自己喜欢的职业。 开始认真学习了 鸡血一波...

    glumes 评论0 收藏0
  • 小李飞刀:用python刷题ing....

    摘要:叨逼叨默认每天都要刷两道题。今天目标已完成。经过昨天的那题数组题,我换了一种方式。之前我采用的是下标来定位,用来删除重复项。这次采用了数组内的每一项来单独做对比,用来进行删除操作。这个判定很重要其中的是后面进行修改的,是必须的判定。 叨逼叨 默认每天都要刷两道题。今天目标已完成。 第一题 26. 删除排序数组中的重复项难度:简单类型:数组 给定一个排序数组,你需要在原地删除重复出现的元...

    fasss 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<