Skip to content

Commit 8d7ef3e

Browse files
committed
doc: 添加变量类型文档
1 parent 1bbbbd5 commit 8d7ef3e

3 files changed

Lines changed: 251 additions & 0 deletions

File tree

example/day02/variable.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#!/usr/bin/env python3
2+
# -*- coding=utf-8 -*-
3+
4+
counter = 100 # 赋值整型变量
5+
miles = 1000.0 # 浮点型
6+
name = "John" # 字符串
7+
8+
print(counter, miles)
9+
10+
a = b = c = 1
11+
12+
print(a, b, c)
13+
14+
a, b, c, d = counter, miles, name, True
15+
16+
print(a, b, c, d)

python-string-slice.png

6.18 KB
Loading

variable-types.md

Lines changed: 235 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,235 @@
1+
# Python 变量类型
2+
3+
## 变量赋值
4+
5+
```py
6+
#!/usr/bin/python
7+
# -*- coding: UTF-8 -*-
8+
9+
counter = 100 # 赋值整型变量
10+
miles = 1000.0 # 浮点型
11+
name = "John" # 字符串
12+
13+
print(counter, miles)
14+
15+
a = b = c = 1
16+
17+
print(a, b, c)
18+
```
19+
20+
也可以为多个对象指定多个变量。例如:
21+
22+
```py
23+
a, b, c, d = counter, miles, name, True
24+
25+
print(a, b, c, d)
26+
```
27+
28+
## 标准数据类型
29+
30+
Python有五个标准的数据类型
31+
32+
- `Numbers`(数字)
33+
- `String`(字符串)
34+
- `List`(列表):可变数组
35+
- `Tuple`(元组):不可变数组
36+
- `Dictionary`(字典):Map
37+
38+
## Python数字
39+
40+
> 数字数据类型用于存储数值。他们是不可改变的数据类型,这意味着改变数字数据类型会分配一个新的对象。
41+
42+
当你指定一个值时,Number对象就会被创建
43+
44+
```py
45+
var1 = 1
46+
var2 = 10
47+
```
48+
49+
> 您也可以使用 `del` 语句删除一些对象的引用。
50+
51+
del语句的语法是: `del var1[,var2[,var3[....,varN]]]]`
52+
53+
```py
54+
del var
55+
del var_a, var_b
56+
```
57+
58+
- Python支持四种不同的数字类型:
59+
60+
1. int(有符号整型)
61+
2. long(长整型[也可以代表八进制和十六进制]
62+
3. float(浮点型)
63+
4. complex(复数)
64+
65+
## Python字符串
66+
67+
> 字符串或串(String)是由数字、字母、下划线组成的一串字符。
68+
69+
一般记为 :
70+
71+
```py
72+
s="a1a2···an" # (n>=0)
73+
```
74+
75+
python的字串列表有 `2` 种取值顺序:
76+
77+
- `从左到右` 索引默认0开始的,最大范围是字符串长度少1
78+
- `从右到左` 索引默认-1开始的,最大范围是字符串开头
79+
80+
![变量](./python-string-slice.png)
81+
82+
### 字符串截取
83+
84+
**个人理解为下标操作**
85+
86+
> 可以使用 `[头下标:尾下标]` 来截取相应的字符串,其中下标是从 0 开始算起,可以是正数或负数,下标可以为空表示取到头或尾。
87+
88+
> `[头下标:尾下标]` 获取的子字符串 `包含头下标` 的字符,但 `不包含尾下标` 的字符。
89+
90+
```py
91+
s = 'abcdef'
92+
93+
s[1:5]
94+
95+
'bcde'
96+
```
97+
98+
加号( `+` )是字符串连接运算符,星号( `*` )是重复操作
99+
100+
```py
101+
#!/usr/bin/python
102+
# -*- coding: UTF-8 -*-
103+
104+
str = 'Hello World!'
105+
106+
print str # 输出完整字符串
107+
print str[0] # 输出字符串中的第一个字符
108+
print str[2:5] # 输出字符串中第三个至第五个之间的字符串
109+
print str[2:] # 输出从第三个字符开始的字符串
110+
print str * 2 # 输出字符串两次
111+
print str + "TEST" # 输出连接的字符串
112+
113+
# 输出结果
114+
115+
Hello World!
116+
H
117+
llo
118+
llo World!
119+
Hello World!Hello World!
120+
Hello World!TEST
121+
```
122+
123+
## Python列表
124+
125+
List(列表), 用 `[ ]` 标识,是 python 最通用的复合数据类型,支持`字符``数字``字符串` 甚至可以包含 `列表`(即嵌套),列表中值的切割也可以用到变量 `[头下标:尾下标]`
126+
127+
```py
128+
#!/usr/bin/python
129+
# -*- coding: UTF-8 -*-
130+
131+
list = [ 'runoob', 786 , 2.23, 'john', 70.2 ]
132+
tinylist = [123, 'john']
133+
134+
print list # 输出完整列表
135+
print list[0] # 输出列表的第一个元素
136+
print list[1:3] # 输出第二个至第三个元素
137+
print list[2:] # 输出从第三个开始至列表末尾的所有元素
138+
print tinylist * 2 # 输出列表两次
139+
print list + tinylist # 打印组合的列表
140+
141+
# 输出结果
142+
143+
['runoob', 786, 2.23, 'john', 70.2]
144+
runoob
145+
[786, 2.23]
146+
[2.23, 'john', 70.2]
147+
[123, 'john', 123, 'john']
148+
['runoob', 786, 2.23, 'john', 70.2, 123, 'john']
149+
```
150+
151+
## Python元组
152+
153+
> 元组是另一个数据类型,类似于List(列表)
154+
> 元组用 `()` 标识。内部元素用 `逗号` 隔开。但是 `元组不能二次赋值,相当于只读列表`
155+
156+
```py
157+
#!/usr/bin/python
158+
# -*- coding: UTF-8 -*-
159+
160+
tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )
161+
tinytuple = (123, 'john')
162+
163+
print tuple # 输出完整元组
164+
print tuple[0] # 输出元组的第一个元素
165+
print tuple[1:3] # 输出第二个至第三个的元素
166+
print tuple[2:] # 输出从第三个开始至列表末尾的所有元素
167+
print tinytuple * 2 # 输出元组两次
168+
print tuple + tinytuple # 打印组合的元组
169+
```
170+
171+
**个人理解为只读的列表**
172+
173+
如:
174+
175+
```py
176+
#!/usr/bin/python
177+
# -*- coding: UTF-8 -*-
178+
179+
tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )
180+
list = [ 'runoob', 786 , 2.23, 'john', 70.2 ]
181+
tuple[2] = 1000 # 元组中是非法应用
182+
list[2] = 1000 # 列表中是合法应用
183+
```
184+
185+
## Python 字典
186+
187+
> 字典(dictionary),用 `{ }` 标识。字典由索引(key)和它对应的值value组成,列表是有序的对象集合,字典是无序的对象集合
188+
189+
> 两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取
190+
191+
```py
192+
#!/usr/bin/python
193+
# -*- coding: UTF-8 -*-
194+
195+
dict = {}
196+
dict['one'] = "This is one"
197+
dict[2] = "This is two"
198+
199+
tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
200+
201+
202+
print dict['one'] # 输出键为'one' 的值
203+
print dict[2] # 输出键为 2 的值
204+
print tinydict # 输出完整的字典
205+
print tinydict.keys() # 输出所有键
206+
print tinydict.values() # 输出所有值
207+
```
208+
209+
## Python数据类型转换
210+
211+
> 数据类型的转换,你只需要将数据类型作为函数名即可
212+
213+
| 函数 | 描述 |
214+
| - | - |
215+
| int(x [,base]) | 将x转换为一个整数 |
216+
| long(x [,base] ) | 将x转换为一个长整数 |
217+
| float(x) | 将x转换到一个浮点数 |
218+
| complex(real [,imag]) | 创建一个复数 |
219+
| str(x) | 将对象 x 转换为字符串 |
220+
| repr(x) | 将对象 x 转换为表达式字符串 |
221+
| eval(str) | 用来计算在字符串中的有效Python表达式,并返回一个对象 |
222+
| tuple(s) | 将序列 s 转换为一个元组 |
223+
| list(s) | 将序列 s 转换为一个列表 |
224+
| set(s) | 转换为可变集合 |
225+
| dict(d) | 创建一个字典。d 必须是一个序列 (key,value)元组。 |
226+
| frozenset(s) | 转换为不可变集合 |
227+
| chr(x) | 将一个整数转换为一个字符 |
228+
| unichr(x) | 将一个整数转换为Unicode字符 |
229+
| ord(x) | 将一个字符转换为它的整数值 |
230+
| hex(x) | 将一个整数转换为一个十六进制字符串 |
231+
| oct(x) | 将一个整数转换为一个八进制字符串 |
232+
233+
## 参考
234+
235+
- [菜鸟 - Python 变量类型](http://www.runoob.com/python/python-variable-types.html)

0 commit comments

Comments
 (0)