Python基础(二)

本章内容

  1. 数据类型
  2. 数据运算
  3. 列表与元组的基本操作
  4. 字典的基本操作
  5. 字符编码与转码
  6. 模块初探
  7. 练习:购物车程序

一、数据类型

  Python有五个标准的数据类型:

  • Numbers(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Dictionary(字典)

  1. Number(数字)

  number类型用来专门存储数字数据,他们是不可改变的数据类型,这意味着改变数字数据类型会分配一个新的对象

  Python支持四种不同的数字类型:

  • int(有符号整型)
  • long(长整型[也可以代表八进制和十六进制])
  • float(浮点型)
  • complex(复数)

  实例

  一些数值类型的实例:

int long float complex
10 51924361L 0.0 3.14j
100 -0x19323L 15.20 45.j
-786 0122L -21.9 9.322e-36j
080 0xDEFABCECBDAECBFBAEl 32.3+e18 .876j
-0490 535633629843L -90. -.6545+0J
-0x260 -052318172735L -32.54e100 3e+26J
0x69 -4721885298529L 70.2-E12 4.53e-7j
  • 长整型也可以使用小写"L",但是还是建议您使用大写"L",避免与数字"1"混淆。Python使用"L"来显示长整型。
  • Python还支持复数,复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。在Python中虚数部分用的是j,是因为Python沿用了工程领域的规范,这块和咱们上学时用的i有所不同。

  2.string(字符串)

  在最新的Python 3版本中,字符串是以Unicode编码的,也就是说,Python的字符串支持多语言,例如:

 >>> print('I am 成怡强')
I am 成怡强

  3.list(列表)

  List(列表) 是 Python 中使用最频繁的数据类型。

  列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(所谓嵌套)。

  列表用[ ]标识。是python最通用的复合数据类型。看这段代码就明白。

  列表中的值得分割也可以用到变量[头下标:尾下标],就可以截取相应的列表,从左到右索引默认0开始的,从右到左索引默认-1开始,下标可以为空表示取到头或尾。

  实例

 name_list = ['tom', 'lili', 'tim']
num_list = [1, 2, 3, 4]

  4.tuple(元组)

  元组是另一个数据类型,类似于List(列表)。

  元组用"()"标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。

  实例

 tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 )

  5.字典

  字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。

  两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

  字典用"{ }"标识。字典由索引(key)和它对应的值value组成。

  实例

 person = {"name": "mr.wu", 'age': 18}

person = dict({"name": "mr.wu", 'age': 18})

二、数据运算

简单的回答可以使用表达式4 + 5等于9,在这里4和5被称为操作数,+被称为操符。 Python语言支持操作者有以下几种类型。

  • 算术运算符

  • 比较(即关系)运算符

  • 赋值运算符

  • 逻辑运算符

  • 位运算符

  • 成员操作符

  • 标识操作符

  • Python运算符优先级

让我们逐一看看所有的运算符。

1.算术运算符

操作符 描述符 例子
+ 加法 - 对操作符的两侧增加值 a + b = 30
- 减法 - 减去从左侧操作数右侧操作数 a - b = -10
* 乘法 - 相乘的运算符两侧的值 a * b = 200
/ 除 - 由右侧操作数除以左侧操作数 b / a = 2
% 模 - 由右侧操作数和余返回除以左侧操作数 b % a = 0
** 指数- 执行对操作指数(幂)的计算 a**b = 10 的幂 20
// 地板除 - 操作数的除法,其中结果是将小数点后的位数被除去的商。 9//2 =  4 而 9.0//2.0 = 4.0

示例:

 #!/usr/bin/python

 a = 21
b = 10
c = 0 c = a + b
print "Line 1 - Value of c is ", c c = a - b
print "Line 2 - Value of c is ", c c = a * b
print "Line 3 - Value of c is ", c c = a / b
print "Line 4 - Value of c is ", c c = a % b
print "Line 5 - Value of c is ", c a = 2
b = 3
c = a**b
print "Line 6 - Value of c is ", c a = 10
b = 5
c = a//b
print "Line 7 - Value of c is ", c

结果:

 Line 1 - Value of c is 31
Line 2 - Value of c is 11
Line 3 - Value of c is 210
Line 4 - Value of c is 2
Line 5 - Value of c is 1
Line 6 - Value of c is 8
Line 7 - Value of c is 2

2.比较(即关系)运算符

运算符 描述 示例
== 检查两个操作数的值是否相等,如果是,则条件变为真。 (a == b) 不为 true.
!= 检查两个操作数的值是否等相等,如果值不相等,则条件变为真。 (a != b) 为 true.
<> 检查两个操作数的值是否等相等,如果值不相等,则条件变为真。 (a <> b) 结果为true。这类似于!=运算符。
> 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 (a > b) 为  true.
< 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 (a < b) 为true.
>= 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 (a >= b) 不为 true.
<= 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。 (a <= b) 为 true.

示例:

 #!/usr/bin/python

 a = 21
b = 10
c = 0 if ( a == b ):
print "Line 1 - a is equal to b"
else:
print "Line 1 - a is not equal to b" if ( a != b ):
print "Line 2 - a is not equal to b"
else:
print "Line 2 - a is equal to b" if ( a <> b ):
print "Line 3 - a is not equal to b"
else:
print "Line 3 - a is equal to b" if ( a < b ):
print "Line 4 - a is less than b"
else:
print "Line 4 - a is not less than b" if ( a > b ):
print "Line 5 - a is greater than b"
else:
print "Line 5 - a is not greater than b" a = 5;
b = 20;
if ( a <= b ):
print "Line 6 - a is either less than or equal to b"
else:
print "Line 6 - a is neither less than nor equal to b" if ( b >= a ):
print "Line 7 - b is either greater than or equal to b"
else:
print "Line 7 - b is neither greater than nor equal to b"

结果:

 Line 1 - a is not equal to b
Line 2 - a is not equal to b
Line 3 - a is not equal to b
Line 4 - a is not less than b
Line 5 - a is greater than b
Line 6 - a is either less than or equal to b
Line 7 - b is either greater than or equal to b

3、赋值运算符

运算符 描述 示例
= 简单的赋值运算符,赋值从右侧操作数左侧操作数 c = a + b 类似于 a + b 到 c
+= 添加和赋值操作符,它增加了右操作数左操作数和结果赋给左操作数 c += a 类似于 c = c + a
-= 减和赋值操作符,它减去右边的操作数从左边操作数,并将结果赋给左操作数 c -= a 类似于 c = c - a
*= 乘法和赋值操作符,它乘以右边的操作数与左操作数,并将结果赋给左操作数 c *= a 类似于 c = c * a
/= 除和赋值操作符,它把左操作数与正确的操作数,并将结果赋给左操作数 c /= a 类似于 c = c / a
%= 模量和赋值操作符,它需要使用两个操作数模和结果赋给左操作数 c %= a 类似于 c = c % a
**= 指数和赋值运算符,执行指数(幂)计算操作符和赋值给左操作数 c **= a 类似于 c = c ** a
//= 地板除,并分配一个值,执行地板划分对操作和指定值到左操作数 c //= a 类似于 c = c // a

示例:

 #!/usr/bin/python

 a = 21
b = 10
c = 0 c = a + b
print "Line 1 - Value of c is ", c c += a
print "Line 2 - Value of c is ", c c *= a
print "Line 3 - Value of c is ", c c /= a
print "Line 4 - Value of c is ", c c = 2
c %= a
print "Line 5 - Value of c is ", c c **= a
print "Line 6 - Value of c is ", c c //= a
print "Line 7 - Value of c is ", c

结果:

 Line 1 - Value of c is 31
Line 2 - Value of c is 52
Line 3 - Value of c is 1092
Line 4 - Value of c is 52
Line 5 - Value of c is 2
Line 6 - Value of c is 2097152
Line 7 - Value of c is 99864

4.逻辑运算符

and 所谓逻辑与运算符。如果两个操作数都为真,则条件为真。 (a and b) 为 true.
or 所谓逻辑OR运算符。如果有两个操作数都为非零,则条件变为真。 (a or b) 为 true.
not 所谓逻辑非运算符。用反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将为false。 not(a and b) 为 false.

示例:

 #!/usr/bin/python

 a = 10
b = 20
c = 0 if ( a and b ):
print "Line 1 - a and b are true"
else:
print "Line 1 - Either a is not true or b is not true" if ( a or b ):
print "Line 2 - Either a is true or b is true or both are true"
else:
print "Line 2 - Neither a is true nor b is true" a = 0
if ( a and b ):
print "Line 3 - a and b are true"
else:
print "Line 3 - Either a is not true or b is not true" if ( a or b ):
print "Line 4 - Either a is true or b is true or both are true"
else:
print "Line 4 - Neither a is true nor b is true" if not( a and b ):
print "Line 5 - Either a is not true or b is not true"
else:
print "Line 5 - a and b are true"

结果:

 Line 1 - a and b are true
Line 2 - Either a is true or b is true or both are true
Line 3 - Either a is not true or b is not true
Line 4 - Either a is true or b is true or both are true
Line 5 - Either a is not true or b is not true

5.位运算符

运算符 描述 示例
& 二进制AND操作复制一位到一个结果数,如果存在两个操作数。 (a & b) = 12 即  0000 1100
| 二进制或复制操作了一个比特,如果它存在一个操作数中。 (a | b) = 61  即 0011 1101
^ 二进制异或运算符的副本,如果它被设置在一个操作数而不是两个比特。 (a ^ b) = 49  即 0011 0001
~ 二进制的补运算符是一元的,并有“翻转”位的效果。 (~a ) =  -61  即 1100 0011 以2的补码形式由于带符号二进制数。
<< 二进位向左移位运算符。左操作数的值左移由右操作数指定的位数。 a << 2 = 240 即 1111 0000
>> 二进位向右移位运算符。左操作数的值是由右操作数指定的位数向右移动。 a >> 2 = 15 即  0000 1111

示例:

 #!/usr/bin/python

 a = 60            # 60 = 0011 1100
b = 13 # 13 = 0000 1101
c = 0 c = a & b; # 12 = 0000 1100
print "Line 1 - Value of c is ", c c = a | b; # 61 = 0011 1101
print "Line 2 - Value of c is ", c c = a ^ b; # 49 = 0011 0001
print "Line 3 - Value of c is ", c c = ~a; # -61 = 1100 0011
print "Line 4 - Value of c is ", c c = a << 2; # 240 = 1111 0000
print "Line 5 - Value of c is ", c c = a >> 2; # 15 = 0000 1111
print "Line 6 - Value of c is ", c

结果:

 Line 1 - Value of c is 12
Line 2 - Value of c is 61
Line 3 - Value of c is 49
Line 4 - Value of c is -61
Line 5 - Value of c is 240
Line 6 - Value of c is 15

6.成员运算符

运算符 描述 实例
in 如果在指定的序列中找到值返回 True,否则返回 False。 x 在 y 序列中 , 如果 x 在 y 序列中返回 True。
not in 如果在指定的序列中没有找到值返回 True,否则返回 False。 x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。

示例:

 #!/usr/bin/python
# -*- coding: UTF-8 -*- a = 10
b = 20
list = [1, 2, 3, 4, 5 ]; if ( a in list ):
print "1 - 变量 a 在给定的列表中 list 中"
else:
print "1 - 变量 a 不在给定的列表中 list 中" if ( b not in list ):
print "2 - 变量 b 不在给定的列表中 list 中"
else:
print "2 - 变量 b 在给定的列表中 list 中" # 修改变量 a 的值
a = 2
if ( a in list ):
print "3 - 变量 a 在给定的列表中 list 中"
else:
print "3 - 变量 a 不在给定的列表中 list 中"

结果:

 1 - 变量 a 不在给定的列表中 list 中
2 - 变量 b 不在给定的列表中 list 中
3 - 变量 a 在给定的列表中 list 中

7.标识操作符

运算符 描述 示例
is 计算结果为true,如果操作符两侧的变量指向相同的对象,否则为false。 x是y,这里结果是1,如果id(x)的值为id(y)。
is not 计算结果为false,如果两侧的变量操作符指向相同的对象,否则为true。 x不为y,这里结果不是1,当id(x)不等于id(y)。

示例:

 #!/usr/bin/python

 a = 20
b = 20 if ( a is b ):
print "Line 1 - a and b have same identity"
else:
print "Line 1 - a and b do not have same identity" if ( id(a) == id(b) ):
print "Line 2 - a and b have same identity"
else:
print "Line 2 - a and b do not have same identity" b = 30
if ( a is b ):
print "Line 3 - a and b have same identity"
else:
print "Line 3 - a and b do not have same identity" if ( a is not b ):
print "Line 4 - a and b do not have same identity"
else:
print "Line 4 - a and b have same identity"

结果:

 Line 1 - a and b have same identity
Line 2 - a and b have same identity
Line 3 - a and b do not have same identity
Line 4 - a and b do not have same identity

8.Python运算符优先级

  运算符优先级来确定条件的表达式中的分组。这会影响一个表达式如何计算。某些运算符的优先级高于其他;例如,乘法运算符的优先级比加法运算更高。

  例如x=7 + 3* 2;这里,x被赋值13,而不是20,因为运算符*的优先级比+更高,所以它首先乘以3 * 2,然后加7。

  这里,具有最高优先级运算符出现在表格上方,那些最低的显示在底部。在一个表达式,更高的优先级运算符将首先计算。

运算符 描述
** 幂(指数)
~ + - 补码,一元加号和减号(方法名的最后两个+@和 - @)
* / % // 乘,除,取模和地板除
+ - 加法和减法
>> << 左,右按位转移
& 按位“与”
^ | 按位异或`'和`定期'或'
<= < > >= 比较运算符
<> == != 等式运算符
= %= /= //= -= += *= **= 赋值运算符
is is not 运算符标识
in not in 成员运算符
not or and 逻辑运算符

示例:

 #!/usr/bin/python

 a = 20
b = 10
c = 15
d = 5
e = 0 e = (a + b) * c / d #( 30 * 15 ) / 5
print "Value of (a + b) * c / d is ", e e = ((a + b) * c) / d # (30 * 15 ) / 5
print "Value of ((a + b) * c) / d is ", e e = (a + b) * (c / d); # (30) * (15/5)
print "Value of (a + b) * (c / d) is ", e e = a + (b * c) / d; # 20 + (150/5)
print "Value of a + (b * c) / d is ", e

结果:

 Value of (a + b) * c / d is 90
Value of ((a + b) * c) / d is 90
Value of (a + b) * (c / d) is 90
Value of a + (b * c) / d is 50

三、列表与元组的基本操作

列表:

1.基本列表操作

  

Python 表达式 结果 描述
len([1, 2, 3]) 3 长度
[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] 串联
['Hi!'] * 4 ['Hi!', 'Hi!', 'Hi!', 'Hi!'] 重复
3 in [1, 2, 3] True 成员
for x in [1, 2, 3]: print x, 1 2 3 迭代

2.切片与索引

 list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5, 6, 7] print("list1[0]: ", list1[0]) #拿第一个元素
print("list2[1:5]: ", list2[1:5]) #顾头不顾尾,切片
print("list1[0]:", list1[::2]) #每两个步长取一个元素

结果:

 list1[0]:  physics
list2[1:5]: [2, 3, 4, 5]
list1[0]: ['physics', 1997]

3.更新列表

 #!/usr/bin/python

 list = ['physics', 'chemistry', 1997, 2000];

 print "Value available at index 2 : "
print list[2];
list[2] = 2001;
print "New value available at index 2 : "
print list[2];

结果:

 Value available at index 2 :
1997
New value available at index 2 :
200

4.删除列表中的元素

要删除列表的元素,可以使用del语句,如果知道哪些元素要删除;或如果你不知道那么使用remove()方法。下面是一个简单的例子:

 #!/usr/bin/python

 list1 = ['physics', 'chemistry', 1997, 2000];

 print list1;
del list1[2];
print "After deleting value at index 2 : "
print list1;

结果:

 ['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]

5.内置函数列表及方法

Python中包括下面的列表函数功能:

Python中包括下面的列表的方法:

元组

  元组是不可变的Python对象序列。元组的序列就像列表。唯一的区别是,元组不能被改变,即元组是不可被修改。元组使用小括号,而列表使用方括号。

  元组的方法只有两个:

 list.count(obj)
list.index(index, obj)

四、字典的基本操作

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:

 dict = {'Alice': '', 'Beth': '', 'Cecil': ''}

也可以用上面的代码来创建一个字典。

键在一个字典中是唯一的,而值可能不是。字典的值可以是任何类型的,但键必须是不可变的数据类型,例如字符串,数字,或元组。

1.访问一个字典的值:

要访问字典元素,您可以使用熟悉的方括号一起的关键,获得它的值。下面是一个简单的例子:

 #!/usr/bin/python

 dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

 print "dict['Name']: ", dict['Name'];
print "dict['Age']: ", dict['Age'];

结果:

 dict['Name']:  Zara
dict['Age']: 7

2.更新字典:

可以通过添加一个新条目或项目(即一个键 - 值对),修改现有条目或删除。作为简单的例子,如下图所示在现有条目更新字词:

 #!/usr/bin/python

 dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

 dict['Age'] = 8; # update existing entry
dict['School'] = "DPS School"; # Add new entry print "dict['Age']: ", dict['Age'];
print "dict['School']: ", dict['School'];

结果:

 dict['Age']:  8
dict['School']: DPS School

3.删除字典元素:

可以删除单个字典元素或清除字典中的全部内容。也可以删除整个字典在一个单一的操作。

要删除整个字典,只要用del语句。下面是一个简单的例子:

 #!/usr/bin/python

 dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

 del dict['Name']; # remove entry with key 'Name'
dict.clear(); # remove all entries in dict
del dict ; # delete entire dictionary print "dict['Age']: ", dict['Age'];
print "dict['School']: ", dict['School'];

这将产生以下结果。注意引发异常,这是因为经过del dict删除,字典已经不存在了:

 dict['Age']:
Traceback (most recent call last):
File "test.py", line 8, in <module>
print "dict['Age']: ", dict['Age'];
TypeError: 'type' object is unsubscriptable

4.字典的键的属性

字典值没有限制。它们可以是任意Python对象,无论是标准的对象或用户定义的对象。但是作为键,是不可以这样的。

要记住字典中的键的两个要点:

(一)不准一个键对应多个条目。这意味着不能有重复的键。当有重复的键,在分配过程中以最后分配的为准。下面是一个简单的例子:

 #!/usr/bin/python

 dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'};

 print "dict['Name']: ", dict['Name'];

当执行上面的代码,产生以下结果:

 dict['Name']:  Manni

(二)键的值字必须是不可变的。这意味着可以使用字符串,数字或元组作为字典的键,但像['key']是不允许的。下面是一个简单的例子:

 #!/usr/bin/python

 dict = {['Name']: 'Zara', 'Age': 7};

 print "dict['Name']: ", dict['Name'];

结果:

 Traceback (most recent call last):
File "test.py", line 3, in <module>
dict = {['Name']: 'Zara', 'Age': 7};
TypeError: list objects are unhashable

5.内置字典功能和方法

Python中包括以下字典功能:

Python中包括以下字典方法:

五、字符编码与转码

Python2.X中默认的字符编码为Unicode

Python3.X中默认字符编码为Utf-8

下面举例说明:

Python3.X

msg = "我爱北京天安门"
#msg_gb2312 = msg.decode("utf-8").encode("gb2312")
msg_gb2312 = msg.encode("gb2312") #默认就是unicode,不用再decode,喜大普奔
gb2312_to_unicode = msg_gb2312.decode("gb2312")
gb2312_to_utf8 = msg_gb2312.decode("gb2312").encode("utf-8") print(msg)
print(msg_gb2312)
print(gb2312_to_unicode)
print(gb2312_to_utf8)

结果:

utf-8
我爱北京天安门
b'\xce\xd2\xb0\xae\xb1\xb1\xbe\xa9\xcc\xec\xb0\xb2\xc3\xc5'
我爱北京天安门
b'\xe6\x88\x91\xe7\x88\xb1\xe5\x8c\x97\xe4\xba\xac\xe5\xa4\xa9\xe5\xae\x89\xe9\x97\xa8'

六、模块初探

一个模块可以在逻辑上组织Python代码。将相关的代码到一个模块中,使代码更容易理解和使用。模块是可以绑定和借鉴任意命名属性的Python对象。

简单地说,一个模块是由Python代码的文件。一个模块可以定义函数,类和变量。模块还可以包括可运行的代码。

sys模块

导入sys模块,调用argv方法

#!/usr/bin/env python
# -*- coding: utf-8 -*- import sys print(sys.argv)

输出结果:

E:\learn_python\day02>D:\python3.5\python.exe blog.py 1 2 3
['blog.py', '1', '2', '3']

os模块

#!/usr/bin/env python
# -*- coding: utf-8 -*- import os os.system("df -h") #调用系统命令

进击的Python【第二章】:Python基础(二)的更多相关文章

  1. python第二天 : 计算机基础(二)

    目录 1.什么是编程 2.操作系统有什么用? 3.计算机由哪三大部分组成? 4.简述操作系统和应用程序的启动流程? 5.编程语言的分类有哪些?并评估各个分类的优缺点. 1).机器语言 2).汇编语言 ...

  2. 简学Python第二章__巧学数据结构文件操作

    #cnblogs_post_body h2 { background: linear-gradient(to bottom, #18c0ff 0%,#0c7eff 100%); color: #fff ...

  3. 第二章Python入门

    第二章 Python入门 2.1.简介 Python是著名的"龟叔"(Guido van Rossum)在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言 Pytho ...

  4. [Python笔记][第二章Python序列-复杂的数据结构]

    2016/1/27学习内容 第二章 Python序列-复杂的数据结构 堆 import heapq #添加元素进堆 heapq.heappush(heap,n) #小根堆堆顶 heapq.heappo ...

  5. [Python笔记][第二章Python序列-tuple,dict,set]

    2016/1/27学习内容 第二章 Python序列-tuple tuple创建的tips a_tuple=('a',),要这样创建,而不是a_tuple=('a'),后者是一个创建了一个字符 tup ...

  6. [python笔记][第二章Python序列-list]

    2016/1/27学习内容 第二章 Python序列-list list常用操作 list.append(x) list.extend(L) list.insert(index,x) list.rem ...

  7. 孤荷凌寒自学python第二十八天python的datetime.date模块

     孤荷凌寒自学python第二十八天python的datetime.date模块 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.toordinal() 此方法将访问从公元1年1月1日至当 ...

  8. 孤荷凌寒自学python第二十二天python类的继承

    孤荷凌寒自学python第二十二天python类的继承 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) python中定义的类可以继承自其它类,所谓继承的概念,我的理解 是,就是一个类B继承自 ...

  9. java面向对象编程——第二章 java基础语法

    第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...

  10. RxJava2实战--第二章 RxJava基础知识

    第二章 RxJava基础知识 1. Observable 1.1 RxJava的使用三步骤 创建Observable 创建Observer 使用subscribe()进行订阅 Observable.j ...

随机推荐

  1. 10个最常见的 HTML5 面试题及答案

    这是选择了10个 HTML5 面试问题并给出了答案.这是 Web 开发人员最常见的面试问题,相信你掌握了这些重要的面试问题后一定会觉得你的理解提高了.一起来看看吧. 您可能感兴趣的相关文章 Web 前 ...

  2. DI中Transient Scoped Singleton Instance的区别

    Observe which of the OperationId values varies within a request, and between requests. Transient obj ...

  3. Linux C 信号 pause、sigsuspend 的相同与区别

    pause函数:       功能:让进程暂停直到信号出现   #include<unistd.h>      intpause();    函数说明:pause()会令目前的进程暂停(进 ...

  4. html 杂记

    <link rel="******"  href=“****.css” type=“text/css”  media=“screen” />css样式外部链接 加个斜杠 ...

  5. UVA - 11235 Frequent values

    2007/2008 ACM International Collegiate Programming Contest University of Ulm Local Contest Problem F ...

  6. webpack 配置文件

    现如今,webpack非常的受欢迎,比较火的几款js框架都推荐使用webpack来构建项目,而webpack也确实非常强大,但是配置webpack缺常常带来很多问题,接下来就写一下我自己遇到的一些坑. ...

  7. 让ecshop模板支持php运算

    让ecshop模板支持php运算在 cls_template.php 底部加入函数: /** * 处理if标签 * * @access public * @param string $tag_args ...

  8. javascript实用技巧、javascript高级技巧

    字号+作者:H5之家 来源:H5之家 2016-10-31 11:00 我要评论( ) 三零网提供网络编程. JavaScript 的技术文章javascript实用技巧.javascript高级技巧 ...

  9. 天河微信小程序入门《四》:融会贯通,form表单提交数据库

    天河在阔别了十几天之后终于又回来了.其实这篇文章里的demo是接着(天河微信小程序入门<三>)后面就做了的,但是因为最近在做别的项目,所以就偷懒没有发出来.放到今天来看,从前台提交数据到数 ...

  10. xml读取节点

    <?xml version="1.0" encoding="utf-8"?> <tplcd type=" product=" ...