mirror of https://github.com/TwoWater/Python
两点水
parent
1b69364df2
commit
f856b62e6f
|
@ -6,7 +6,7 @@ Python 是著名的“龟叔” Guido van Rossum 在 1989 年圣诞节期间,
|
|||
|
||||
这是 2017 年 2 月编程语言排行榜 TOP20 榜单:
|
||||
|
||||

|
||||

|
||||
|
||||
还有就是 Top 10 编程语言 TIOBE 指数走势:
|
||||
|
||||
|
@ -20,4 +20,4 @@ Python 是高级编程语言,它有一个特点就是能快速的开发。Pyth
|
|||
|
||||
第一个缺点就是运行速度慢,和C程序相比非常慢,因为Python是解释型语言,你的代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢。而C程序是运行前直接编译成CPU能执行的机器码,所以非常快。
|
||||
|
||||
第二个缺点就是代码不能加密。如果要发布你的 Python 程序,实际上就是发布源代码。像 JAVA , C 这些编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去。
|
||||
第二个缺点就是代码不能加密。如果要发布你的 Python 程序,实际上就是发布源代码。像 JAVA , C 这些编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去。
|
||||
|
|
|
@ -24,7 +24,8 @@ print(list1[0:2])
|
|||
|
||||
输出的结果:
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
## 3、更新 List(列表) ##
|
||||
|
||||
|
@ -43,7 +44,7 @@ print(list1)
|
|||
|
||||
输出的结果:
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
## 4、删除 List(列表) ##
|
||||
|
@ -60,7 +61,7 @@ print(list1)
|
|||
|
||||
输出的结果:
|
||||
|
||||

|
||||

|
||||
|
||||
## 5、List(列表)运算符 ##
|
||||
|
||||
|
@ -154,4 +155,4 @@ print(newUser)
|
|||
|
||||
```
|
||||
|
||||

|
||||

|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
|
||||
# 目录 #
|
||||
|
||||

|
||||

|
||||
|
|
|
@ -25,9 +25,10 @@ tuple3=()
|
|||
tuple4=(123,)
|
||||
```
|
||||
|
||||
如果不加逗号,创建出来的就不是 tuple (元组),而是指 ```123``` 这个数了,这是因为括号 ()既可以表示 tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python 规定,这种情况下,按小括号进行计算,计算结果自然是 ```123``` 。具体看下图 tuple4 和 tuple5 的输出值
|
||||
如果不加逗号,创建出来的就不是 tuple (元组),而是指 ```123``` 这个数了,这是因为括号 ()既可以表示 tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python 规定,这种情况下,按小括号进行计算,计算结果自然是 ```123``` 。具体看下图 tuple4 和 tuple5 的输出值
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
## 2、tuple(元组)的索引 ##
|
||||
|
@ -50,7 +51,7 @@ print(tuple2[0])
|
|||
|
||||
输出的结果:
|
||||
|
||||

|
||||

|
||||
|
||||
## 4、修改 tuple (元组) ##
|
||||
|
||||
|
@ -114,4 +115,4 @@ del tuple1
|
|||
|len(tuple)|计算元组元素个数|
|
||||
|max(tuple)|返回元组中元素最大值|
|
||||
|min(tuple)|返回元组中元素最小值|
|
||||
|tuple(seq)|将列表转换为元组|
|
||||
|tuple(seq)|将列表转换为元组|
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
|
||||
# 目录 #
|
||||
|
||||

|
||||

|
||||
|
|
|
@ -79,7 +79,7 @@ print(set1)
|
|||
|
||||
因为 set 是一个无序不重复元素集,因此,两个 set 可以做数学意义上的 union(并集), intersection(交集), difference(差集) 等操作。
|
||||
|
||||

|
||||

|
||||
|
||||
例子:
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
循环语句的一般形式如下:
|
||||
|
||||

|
||||

|
||||
|
||||
Python 提供了 for 循环和 while 循环,当然还有一些控制循环的语句:
|
||||
|
||||
|
@ -19,7 +19,7 @@ Python 提供了 for 循环和 while 循环,当然还有一些控制循环的
|
|||
|
||||
|
||||
```python
|
||||
count = 1
|
||||
count = 1
|
||||
sum = 0
|
||||
while (count <= 100):
|
||||
sum = sum + count
|
||||
|
@ -38,7 +38,7 @@ print(sum)
|
|||
比如,上面的例子是计算 1 到 100 所有整数的和,当我们需要判断 sum 大于 1000 的时候,不在相加时,可以用到 break ,退出整个循环
|
||||
|
||||
```python
|
||||
count = 1
|
||||
count = 1
|
||||
sum = 0
|
||||
while (count <= 100):
|
||||
sum = sum + count
|
||||
|
@ -57,7 +57,7 @@ print(sum)
|
|||
有时候,我们只想统计 1 到 100 之间的奇数和,那么也就是说当 count 是偶数,也就是双数的时候,我们需要跳出当次的循环,不想加,这时候可以用到 break
|
||||
|
||||
```python
|
||||
count = 1
|
||||
count = 1
|
||||
sum = 0
|
||||
while (count <= 100):
|
||||
if ( count % 2 == 0): # 双数时跳过输出
|
||||
|
@ -105,13 +105,13 @@ else:
|
|||
它的流程图基本如下:
|
||||
|
||||
|
||||

|
||||

|
||||
|
||||
基本的语法格式:
|
||||
|
||||
```python
|
||||
for iterating_var in sequence:
|
||||
statements(s)
|
||||
statements(s)
|
||||
```
|
||||
|
||||
实例:
|
||||
|
@ -129,7 +129,7 @@ e
|
|||
l
|
||||
l
|
||||
o
|
||||
|
||||
|
||||
两
|
||||
点
|
||||
水
|
||||
|
|
|
@ -6,7 +6,7 @@ Python 程序语言指定任何非 0 和非空(null)值为 True,0 或者 n
|
|||
|
||||
执行的流程图如下:
|
||||
|
||||

|
||||

|
||||
|
||||
## 1、if 语句的基本形式 ##
|
||||
|
||||
|
@ -46,7 +46,7 @@ else :
|
|||
上面也说道,非零数值、非空字符串、非空 list 等,判断为True,否则为False。因此也可以这样写:
|
||||
|
||||
```python
|
||||
num = 6
|
||||
num = 6
|
||||
if num :
|
||||
print('Hello Python')
|
||||
```
|
||||
|
@ -111,7 +111,7 @@ else :
|
|||
|
||||
if ( java >= 80 and java < 90 ) or ( python >= 80 and python < 90):
|
||||
print('良好')
|
||||
|
||||
|
||||
```
|
||||
|
||||
输出结果:
|
||||
|
|
|
@ -2,9 +2,9 @@
|
|||
|
||||
第一次建学习群,而且是 Python 的学习群,虽然之前深入学习和工作都是 Android 相关的,最近学起来 Python ,真的很好玩,所以创了个微信群,希望童鞋们进群学习讨论。也可以直接加我微`androidwed`拉进群。也欢迎大家在 [Gitbook](https://www.readwithu.com/) 中提出文章的不足。
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
# 目录 #
|
||||
|
||||

|
||||

|
||||
|
|
|
@ -9,7 +9,7 @@ def chagne_number( b ):
|
|||
|
||||
b = 1
|
||||
chagne_number(b)
|
||||
print( b )
|
||||
print( b )
|
||||
```
|
||||
|
||||
最后输出的结果为:
|
||||
|
@ -31,7 +31,7 @@ print( b )
|
|||
|
||||
**可更改的类型**:变量赋值 `a = [1,2,3,4,5,6]` ,就是生成一个对象 list ,list 里面有 6 个元素,而变量 a 指向 list ,`a[2] = 5`则是将 list a 的第三个元素值更改,这里跟上面是不同的,并不是将 a 重新指向,而是直接修改 list 中的元素值。
|
||||
|
||||

|
||||

|
||||
|
||||
这也将影响到函数中参数的传递了:
|
||||
|
||||
|
@ -47,7 +47,7 @@ def chagne_number( b ):
|
|||
print('函数中一开始 b 的值:{}' .format( b ) )
|
||||
b = 1000
|
||||
print('函数中 b 赋值后的值:{}' .format( b ) )
|
||||
|
||||
|
||||
|
||||
b = 1
|
||||
chagne_number( b )
|
||||
|
@ -73,7 +73,7 @@ def chagne_list( b ):
|
|||
print('函数中一开始 b 的值:{}' .format( b ) )
|
||||
b.append(1000)
|
||||
print('函数中 b 赋值后的值:{}' .format( b ) )
|
||||
|
||||
|
||||
|
||||
b = [1,2,3,4,5]
|
||||
chagne_list( b )
|
||||
|
|
|
@ -24,7 +24,7 @@ print(sum(1,2))
|
|||
|
||||
这个示例,还通过内置函数`isinstance()`进行数据类型检查,检查调用函数时参数是否是整形和浮点型。如果参数类型不对,会报错,提示 `参数类型错误`,如图:
|
||||
|
||||

|
||||

|
||||
|
||||
当然,函数也可以返回多个值,具体实例如下:
|
||||
|
||||
|
@ -35,7 +35,7 @@ def division ( num1, num2 ):
|
|||
# 求商与余数
|
||||
a = num1 % num2
|
||||
b = (num1-a) / num2
|
||||
return b , a
|
||||
return b , a
|
||||
|
||||
num1 , num2 = division(9,4)
|
||||
tuple1 = division(9,4)
|
||||
|
@ -51,4 +51,4 @@ print (tuple1)
|
|||
(2.0, 1)
|
||||
```
|
||||
|
||||
认真观察就可以发现,尽管从第一个输出值来看,返回了多个值,实际上是先创建了一个元组然后返回的。回忆一下,元组是可以直接用逗号来创建的,观察例子中的 ruturn ,可以发现实际上我们使用的是逗号来生成一个元组。
|
||||
认真观察就可以发现,尽管从第一个输出值来看,返回了多个值,实际上是先创建了一个元组然后返回的。回忆一下,元组是可以直接用逗号来创建的,观察例子中的 ruturn ,可以发现实际上我们使用的是逗号来生成一个元组。
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
|
||||
# 目录 #
|
||||
|
||||

|
||||

|
||||
|
|
12
python7/4.md
12
python7/4.md
|
@ -65,7 +65,7 @@ def my_function():
|
|||
for i in range(10):
|
||||
print ( i )
|
||||
|
||||
my_function()
|
||||
my_function()
|
||||
```
|
||||
|
||||
输出的结果:
|
||||
|
@ -91,7 +91,7 @@ def my_function():
|
|||
for i in range(10):
|
||||
yield i
|
||||
|
||||
print(my_function())
|
||||
print(my_function())
|
||||
```
|
||||
|
||||
输出的结果:
|
||||
|
@ -119,7 +119,7 @@ for x in fibon(1000000):
|
|||
|
||||
运行的效果:
|
||||
|
||||

|
||||

|
||||
|
||||
你看,运行一个这么打的参数,也不会说有卡死的状态,因为这种方式不会使用太大的资源。这里,最难理解的就是 generator 和函数的执行流程不一样。函数是顺序执行,遇到 return 语句或者最后一行函数语句就返回。而变成 generator 的函数,在每次调用 next() 的时候执行,遇到 yield语句返回,再次执行时从上次返回的 yield 语句处继续执行。
|
||||
|
||||
|
@ -136,9 +136,9 @@ def odd():
|
|||
yield ( 5 )
|
||||
|
||||
o = odd()
|
||||
print( next( o ) )
|
||||
print( next( o ) )
|
||||
print( next( o ) )
|
||||
print( next( o ) )
|
||||
print( next( o ) )
|
||||
print( next( o ) )
|
||||
```
|
||||
|
||||
输出的结果:
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
|
||||
# 目录 #
|
||||
|
||||

|
||||

|
||||
|
|
Loading…
Reference in New Issue