一, 变量
> python 中, 变量的概念基本上与初中代数的方程变量是一致的, 例如: y=x*x,x 就是变量, 当 x=5 时, 计算结果就是 25. 在计算机程序中, 变量不仅可以是数字, 还可以是任意数据类型.
Python 程序中, 变量是用一个变量名表示, 变量名必须是大小写, 数字, 英文和下划线 ( _ ) 的组合, 且不能用数字开头.
- a=1 # 变量 a 是一个整数
- ap="test" # 变量 ap 是一个字符串
在 Python 中, 等号 = 是赋值语句, 可以把任意数据类型赋值给变量, 同一个变量可以反复赋值, 而且可以是不同类型的变量.
可以定义变量类型, 例如:
- int a = 123 ; # a 是整数类型变量(int 是整型)
- a = "test" ; # 报错误: 不能把字符串赋给整型变量
当写 a = "ABC" 时, 内存会做两件事:
1. 在内存中创建一个 "ABC" 的字符串;
2. 在内存中创建一个名为 a 的变量名, 并指向 "ABC"
也可以把一个变量 a 赋值给另一个变量 b, 这个操作实际上是把变量 b 指向变量 a 所指向的数据, 例如下面的代码:
- a = 'ABC'
- b = a
- a = 'XYZ'
- print b
最好打印 b 会出现什么数值? 分析下:
1,a 这个变量名指向了 ABC 字符串
2,b 这个变量名也指向 ABC 字符串
3,a 这个变量名重新指向 XYZ
4,b 这个变量名指向没变更, 最后打印出 ABC
二, 字符串
定义字符串用 '' 或" " 括起来表示, 如:
s="is OK"
如果字符串包含 '' 或" " 可以用转义字符 \, 如:
s='i\'m OK'; a='Bob said \"I\'m OK\".' 注: 转义字符不计入字符串中.
常用的转义字符还有:
\n 表示换行
\t 表示一个制表符
\\ 表示 \ 字符本身
三, raw 字符串
如果一个字符串包含很多需要转义的字符, 那对每一个特殊字符都转义的会非常麻烦, 这个时候在前面加个 r 就变成 raw 字符串, 里面的字符就不需要转义了. 注: raw 字符串即是 原生字符串. 例如:
- a= "c:\new" # 如果不是 raw 字符串, 那么解释器把字符串其中 \ n 变成换行符 (因为 \ n 本身就是换行符) 所以加上 r 就不会变成换行符
- a= r"c:\new" # 加 r 就变成完整的字符串: c:\new 所以 raw 字符串有抑制转义的功能
遇到类似于 counrty='u.k.'这样的国家名称, 把 country 放到正则表达式中, 不能正确的匹配, 是因为包含'.'字符的缘故('.'在正则表达式中是一个元字符, 可以代表任意字符).
四, 多行字符串
如果要表示多行字符串, 可以用'''...'''表示:
'''Line 1
Line 2
Line 3'''上面这个字符串的表示方法和下面的是完全一样的:'Line 1\nLine 2\nLine 3'
还可以在多行字符串前面添加 r , 把这个多行字符串也变成一个 raw 字符串:
r'''Python is created by"Guido".
It is free and easy to learn.
Let's start learn Python in imooc!'''
五, unicode 字符串
如果字符串要显示中文, 那就需要把编码集改成 UTF-8, 如:
a=u'中文' # 前面加 u
或者可以在代码第一行加上注释使用 utf-8:
# -*- coding: utf-8 -*-
来源: http://www.bubuko.com/infodetail-2987826.html