提交 17212594 编写于 作者: J jackfrued

调整了部分目录结构

上级 400cc99f
...@@ -64,39 +64,39 @@ if __name__ == '__main__': ...@@ -64,39 +64,39 @@ if __name__ == '__main__':
```Python ```Python
def main(): def main():
list1 = [1, 3, 5, 7, 100] list1 = [1, 3, 5, 7, 100]
print(list1) print(list1)
list2 = ['hello'] * 5 list2 = ['hello'] * 5
print(list2) print(list2)
# 计算列表长度(元素个数) # 计算列表长度(元素个数)
print(len(list1)) print(len(list1))
# 下标(索引)运算 # 下标(索引)运算
print(list1[0]) print(list1[0])
print(list1[4]) print(list1[4])
# print(list1[5]) # IndexError: list index out of range # print(list1[5]) # IndexError: list index out of range
print(list1[-1]) print(list1[-1])
print(list1[-3]) print(list1[-3])
list1[2] = 300 list1[2] = 300
print(list1) print(list1)
# 添加元素 # 添加元素
list1.append(200) list1.append(200)
list1.insert(1, 400) list1.insert(1, 400)
list1 += [1000, 2000] list1 += [1000, 2000]
print(list1) print(list1)
print(len(list1)) print(len(list1))
# 删除元素 # 删除元素
list1.remove(3) list1.remove(3)
if 1234 in list1: if 1234 in list1:
list1.remove(1234) list1.remove(1234)
del list1[0] del list1[0]
print(list1) print(list1)
# 清空列表元素 # 清空列表元素
list1.clear() list1.clear()
print(list1) print(list1)
if __name__ == '__main__': if __name__ == '__main__':
main() main()
``` ```
和字符串一样,列表也可以做切片操作,通过切片操作我们可以实现对列表的复制或者将列表中的一部分取出来创建出新的列表,代码如下所示。 和字符串一样,列表也可以做切片操作,通过切片操作我们可以实现对列表的复制或者将列表中的一部分取出来创建出新的列表,代码如下所示。
......
...@@ -216,7 +216,7 @@ ...@@ -216,7 +216,7 @@
- Redis概述 - Redis概述
- Mongo概述 - Mongo概述
### Day41~55 - [Django实战](./Day41-55) ### Day41~55 - [实战Django](./Day41-55)
#### Day41 - [快速上手](./Day41-55/01.快速上手.md) #### Day41 - [快速上手](./Day41-55/01.快速上手.md)
...@@ -255,19 +255,27 @@ ...@@ -255,19 +255,27 @@
- Web应用安全保护 - Web应用安全保护
### Day56~65 - [Flask实战](./Day56-65) ### Day56~60 - [实战Flask](./Day56-65)
#### Day56 - [Flask入门](./Day56-65/01.Flask入门.md) #### Day56 - [Flask入门](./Day56-60/01.Flask入门.md)
#### Day57 - [模板的使用](./Day56-65/02.模板的使用.md) #### Day57 - [模板的使用](./Day56-60/02.模板的使用.md)
#### Day58 - [表单的处理](./Day56-65/03.表单的处理.md) #### Day58 - [表单的处理](./Day56-60/03.表单的处理.md)
#### Day59 - [数据库操作](./Day56-65/04.数据库操作.md) #### Day59 - [数据库操作](./Day56-60/04.数据库操作.md)
#### Day60 - [项目结构](./Day56-65/05.项目结构.md) #### Day60 - [项目实战](./Day56-60/05.项目实战.md)
#### Day61-65 - [项目实战](./Day56-65/06-10.项目实战.md) ### Day61~65 - [实战Tornado](./Day61-65)
#### Day61 - [Tornado入门]()
#### Day62 - [Tornado中的异步化]()
#### Day63 - [WebSocket的应用]()
#### Day64-65 - [项目实战]()
### Day66~75 - [爬虫开发](./Day66-75) ### Day66~75 - [爬虫开发](./Day66-75)
...@@ -363,7 +371,7 @@ ...@@ -363,7 +371,7 @@
- 团队的构成和角色 - 团队的构成和角色
> 说明:谢谢付祥英MM绘制了下面这张精美的公司组织架构图。 > 说明:谢谢付祥英女士绘制了下面这张精美的公司组织架构图。
![company_architecture](./res/company_architecture.png) ![company_architecture](./res/company_architecture.png)
......
## 那些年我们踩过的那些坑 ## 那些年我们踩过的那些坑
### 坑01 - 整数比较的坑 ### 坑1 - 整数比较的坑
在 Python 中一切都是对象,整数也是对象,在比较两个整数时有两个运算符`==``is`,它们的区别是: 在 Python 中一切都是对象,整数也是对象,在比较两个整数时有两个运算符`==``is`,它们的区别是:
...@@ -77,7 +77,7 @@ if __name__ == "__main__": ...@@ -77,7 +77,7 @@ if __name__ == "__main__":
如果还想对这个问题进行进一步深挖,推荐大家阅读[《Python整数对象实现原理》](https://foofish.net/python_int_implement.html)这篇文章。 如果还想对这个问题进行进一步深挖,推荐大家阅读[《Python整数对象实现原理》](https://foofish.net/python_int_implement.html)这篇文章。
### 坑02 - 嵌套列表的坑 ### 坑2 - 嵌套列表的坑
Python中有一种内置的数据类型叫列表,它是一种容器,可以用来承载其他的对象(准确的说是其他对象的引用),列表中的对象可以称为列表的元素,很明显我们可以把列表作为列表中的元素,这就是所谓的嵌套列表。嵌套列表可以模拟出现实中的表格、矩阵、2D游戏的地图(如植物大战僵尸的花园)、棋盘(如国际象棋、黑白棋)等。但是在使用嵌套的列表时要小心,否则很可能遭遇非常尴尬的情况,下面是一个小例子。 Python中有一种内置的数据类型叫列表,它是一种容器,可以用来承载其他的对象(准确的说是其他对象的引用),列表中的对象可以称为列表的元素,很明显我们可以把列表作为列表中的元素,这就是所谓的嵌套列表。嵌套列表可以模拟出现实中的表格、矩阵、2D游戏的地图(如植物大战僵尸的花园)、棋盘(如国际象棋、黑白棋)等。但是在使用嵌套的列表时要小心,否则很可能遭遇非常尴尬的情况,下面是一个小例子。
...@@ -153,7 +153,7 @@ if __name__ == '__main__': ...@@ -153,7 +153,7 @@ if __name__ == '__main__':
![](./res/python-tutor-visualize2.png) ![](./res/python-tutor-visualize2.png)
### 坑03 - 访问修饰符的坑 ### 坑3 - 访问修饰符的坑
用Python做过面向对象编程的人都知道,Python的类提供了两种访问控制权限,一种是公开,一种是私有(在属性或方法前加上双下划线)。而用惯了Java或C#这类编程语言的人都知道,类中的属性(数据抽象)通常都是私有的,其目的是为了将数据保护起来;而类中的方法(行为抽象)通常都是公开的,因为方法是对象向外界提供的服务。但是Python并没有从语法层面确保私有成员的私密性,因为它只是对类中所谓的私有成员进行了命名的变换,如果知道命名的规则照样可以直接访问私有成员,请看下面的代码。 用Python做过面向对象编程的人都知道,Python的类提供了两种访问控制权限,一种是公开,一种是私有(在属性或方法前加上双下划线)。而用惯了Java或C#这类编程语言的人都知道,类中的属性(数据抽象)通常都是私有的,其目的是为了将数据保护起来;而类中的方法(行为抽象)通常都是公开的,因为方法是对象向外界提供的服务。但是Python并没有从语法层面确保私有成员的私密性,因为它只是对类中所谓的私有成员进行了命名的变换,如果知道命名的规则照样可以直接访问私有成员,请看下面的代码。
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册