自学Python一 迷茫中的开端!
有心学习一下Python,多门技术多条路啊。经历了找教程,看代码,写demo,这东西入门容易精通难啊!又因为请了两周婚假彻底忘光光。想了想自己还是边复习边写点什么东西吧。很多技术,新东西都是看了n多,看了n多但是却不会写,不会用。一是没有实践,二是没有养成那种思维方式!这篇就当是一篇流水账好了!
Python 是 What?
1.解释性语言(运行前不需要编译,如php)
2.动态类型语言(声明变量的时候不需要说明变量类型)
面向对象的Python
Python非常适合oop。函数和类都是第一类对象,函数既能返回函数类型也可以接受函数输入。支持通过组合和继承的方式定义类。注意:Python中没有访问说明符(public,private),这么设计的依据是“大家都是成年人了 23333”
Python安装及编译器配置及基础教程
这个就根据自己喜好了,可以用文本编辑器Vim或者Sublime Text,或者Pycharm,或者用Eclipse+Pydev 或者 VS2013 + python tools (请允许我保留我大vs一席之地!)
入门教程:基础教程 博客类教程: Vamei大哥的python系列 廖雪峰老师的博客教程
我接下来写的基础部分基本都是综合了两位大神的一些内容进行了实践,链接已上!支持开源,保护版权!
那么接下来,我将尝试根据自己遇到的困难,克服自己的懒惰与眼高手低,逐一的去记录python的优雅!
Action!
Python中的屠龙刀(用好了妙用无穷哦!)
一、 切片
list!众所周知,列表。有一系列内置方法的列表,如len(filelist) , filelist.append('xx.jpg') , filelist.insert(1,'xx.jpg') , filelist.pop() filelist.pop(index)等
tuple!元组,与list不同的是 元组初始化之后无法改变,所以没有list的insert() append()等方法,也不能重新赋值!
有一个tuple如下:
t = ('a','b',['c','d'])
t[0] = 'A' #error
t[3][0] = 'C' #right
好了,其实这也没什么难得,比c指针哪里好理解多了!谈这两个的原因是因为他设计到了python的高级特性:切片!
对于一个list,打印出其所有元素怎么办,首先想到的是for循环遍历,在python中你可以这样:
>>>L = list(range(100))
>>>L
[0,1,2,3,4,5...,99] >>>L[:]
[0,1,2,3,4,5...,99] >>>L[0:10] #取索引0-索引10之间的数字(索引从0开始可以省略为L[:10])
[0,1,2,3,4,5,6,7,8,9] >>>L[-10:] #取倒数索引后10个数字
[90,91,92,93,94,95,96,97,98,99] >>>L[10:20:2] #取索引10-索引20之间的数,每隔2个取一个
[10,12,14,16,18]
tuple也可以这样,切片后得到的还是一个tuple,字符串也支持切片!
>>>'ABCDEFG'[:3]
'ABC'
>>>'ABCDEFG'[::2]
'ACEG'
list排序
1.list.sort(func=None,key=None,reverse=False)
2.sorted(list)
当然,访问list或者tuple的时候要注意索引不要超出,毕竟大家都是成年人了。。。不得不说,这个切片太方便了。
二、迭代
这个就不用多说了,在c#中经常用到,在访问数组,List,字典等等的时候经常foreach了!在Python中也一样,只要是Iterable类型就可以进行迭代!
>>>from collections import Iterable
>>>isinstance('abc',Iterable)#字符串是否可迭代
True
>>>ininstance([1,2,3],Iterable)#列表是否可迭代
True #迭代时可以引用多个变量
>>>for x,y in [(1,1),(2,2),(3,3)]:
print(x,y)
1 1
2 2
3 3
#等价于
>>>for item in [(1,1),(2,2),(3,3)]:
print(item[0],item[1]) #python 内置的enumerate可以变列表变成索引-元素对
>>>for i,value in enumerate(['a','b','c'])"
print(i,value)
0 a
1 b
2 c
(未完待续。。。下一篇,lambda函数 列表生成器 装饰器)
自学Python一 迷茫中的开端!的更多相关文章
- 孤荷凌寒自学python第五十四天使用python来删除Firebase数据库中的文档
孤荷凌寒自学python第五十四天使用python来删除Firebase数据库中的文档 (完整学习过程屏幕记录视频地址在文末) 今天继续研究Firebase数据库,利用google免费提供的这个数据库 ...
- 孤荷凌寒自学python第五十三天使用python写入和修改Firebase数据库中记录
孤荷凌寒自学python第五十三天使用python写入和修改Firebase数据库中记录 (完整学习过程屏幕记录视频地址在文末) 今天继续研究Firebase数据库,利用google免费提供的这个数 ...
- 孤荷凌寒自学python第五十二天初次尝试使用python读取Firebase数据库中记录
孤荷凌寒自学python第五十二天初次尝试使用python读取Firebase数据库中记录 (完整学习过程屏幕记录视频地址在文末) 今天继续研究Firebase数据库,利用google免费提供的这个数 ...
- 孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成
孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天经过反复折腾,最终基本上算 ...
- 孤荷凌寒自学python第四十七天通用跨数据库同一数据库中复制数据表函数
孤荷凌寒自学python第四十七天通用跨数据库同一数据库中复制数据表函数 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天打算完成的是通用的(至少目 ...
- 孤荷凌寒自学python第三十二天python的代码块中的异常的捕获
孤荷凌寒自学python第三十二天python的代码块中的异常的捕获 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天简单了解了Python的错误陷阱,了解到其与过去学过的其它语言非常类似 ...
- 孤荷凌寒自学python第二十四天python类中隐藏的私有方法探秘
孤荷凌寒自学python第二十四天python类中隐藏的私有方法探秘 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天发现了python的类中隐藏着一些特殊的私有方法. 这些私有方法不管我 ...
- 自学python中的心得
以后的日子里我将与可爱的亲们一起度过我自学python的岁月,请博客园里的大佬们监督与见证.
- 自学Python编程的第十天(希望有IT大牛看见的指点小弟我,万分感谢)---------来自苦逼的转行人
2019-09-20-23:24:15 今天逛论坛.逛知识星球时.逛b站up主时,都说到低学历,非科班的人最好不要去自学Python 他们都说:如果我们学python是为了找工作,最好不要把pytho ...
随机推荐
- 如何在 Git 里撤销(几乎)任何操作
任何版本控制系统的一个最有的用特性就是“撤销 (undo)”你的错误操作的能力.在 Git 里,“撤销” 蕴含了不少略有差别的功能. 当你进行一次新的提交的时候,Git 会保存你代码库在那个特定时间点 ...
- visio2007无法拖动
连按两下键盘上的 “Esc” 键
- MSP430F149学习之路——UART
代码一: #include <msp430x14x.h> void int_clk() { BCSCTL1 &= ~XT2OFF; BCSCTL2 |= SELM_2 + SELS ...
- 洛谷P1215 [USACO1.4]母亲的牛奶 Mother's Milk
P1215 [USACO1.4]母亲的牛奶 Mother's Milk 217通过 348提交 题目提供者该用户不存在 标签USACO 难度普及/提高- 提交 讨论 题解 最新讨论 暂时没有讨论 ...
- java中byte转换int时为何与0xff进行与运算
在剖析该问题前请看如下代码 public static String bytes2HexString(byte[] b) { String ret = ""; for (int ...
- 【Hibernate 3】一对一映射配置
一.一对一映射简介 一对一关联映射有两种实现策略: 第一种:主键关联,即让两个对象具有相同的主键值,以表明它们之间的一一对应的关系:数据库表不会有额外的字段来维护它们之间的关系,仅通过表的主键来关联 ...
- 【EF 4】ORM框架及其流行产品之一EF介绍
导读:跳进了多租户切换数据库的坑,那么就继续走下去吧.在我们的项目中,是运用EF实现对数据库的操作,那么EF其实是.NET系统中,基于ORM框架的一个产品实现.在java那边,则有Hibernate和 ...
- ubuntu多网卡绑定
这是最近碰到这个问题,需要将两张网卡绑定,共用一个IP,实现冗余效果.实际上linux双网卡的绑定模式有7中,而在这里常用的是 active-backup linux有七种网卡绑定模式:0. roun ...
- WWF3状态机工作流<WWF第七篇>
状态机是另外一种常见的工作流类型.它是以状态的变迁为驱动而进行业务流转的,是一定需要人为干预的,而不像顺序类型工作流那样可以按照事先设计好的业务流程一步一步依次执行下去. 一.状态机工作流范例 Sta ...
- 深入了解Qt(二)之元对象系统(Meta-Object System)
深入了解Qt主要内容来源于Inside Qt系列,本文做了部分删改,以便于理解.在此向原作者表示感谢! 在Qt Meta Object System-元对象系统这篇文章中,从底层实现的源码剖析了元对象 ...