Python变量定义
万里顾一程 人气:01、变量的定义
定义变量语法格式:
variable_name = variable_name
variable_name表示变量名;
variable_name表示值,也就是要存储的数据。
使用实例
a = 85 #将整数赋值给变量a abc = "http://c.abc.net/" #将字符串赋值给变量abc abc = "http://c.efg.net/" #修改变量的值 #将表达式的运行结果赋值给变量 sum = 100 + 200
2、变量的简单使用
Python是弱类型语言,弱类型语言有下面两个特点:
- 变量不用先声明就可以直接赋值,对一个没声明的变量赋值就相当于定义了一个新变量。
- 变量的数据类型可以改变,如,一个变量可以先被赋值为字符串,后再被赋值为整数。
在Python中,为了应对不同的业务需求,把数据分为下面几种类型:
- Number(数字)
- int:有符号整型
- long:长整型,也可以代表八进制和十六进制(Python3中没有)
- float:浮点型
- complex:复数
- String(字符串)
- boolean 布尔类型
- True 真
- False 假
- List(列表)
- Tuple(元组)
- Set(集合)
- Dictionary(字典)
长整型 int
不管对于多大或者多小的整数,Python 3.x 只用 int 一种类型存储,表示为长整型,并且整数的取值范围是无限的,
如下实例:
#将 7 赋值给变量 n n = 7 print(n) #查看数据类型 print( type(n) ) #给x赋值一个很大的整数 x = 1111111111111111111111 print(x) #判断x是否为int类型 print(isinstance(x,int)) #给y赋值一个很小的整数 y = -1111111111111111111111 print(y) print( type(y) )
执行结果:x和y是极大的数字和极小的数字,Python 都能正确输出且不会发生溢出
7 <class 'int'> 1111111111111111111111 True <class 'int'> -1111111111111111111111 <class 'int'>
浮点型 flout
Python 只有一种小数类型,就是 float,像int一样Python能存储极小和极大的浮点数。
如下实例:
f1 = 15.9 print("f1Value: ", f1) print("f1Type: ", type(f1)) f2 = 0.319452585712345303 print("f2Value: ", f2) print("f2Type: ", type(f2)) f3 = 0.0000000000000000000000000123 print("f3Value: ", f3) print("f3Type: ", type(f3)) f4 = 31945258573194525857.12345 print("f4Value: ", f4) print("f4Type: ", type(f4)) f6 = 15.9 * 0.1 print("f6Value: ", f6) print("f6Type: ", type(f6))
执行结果:
f1Value: 15.9
f1Type: <class 'float'>
f2Value: 0.3194525857123453
f2Type: <class 'float'>
f3Value: 1.23e-26
f3Type: <class 'float'>
f4Value: 3.1945258573194527e+19
f4Type: <class 'float'>
f6Value: 1.59
f6Type: <class 'float'>
- 由上面结果可以看出,print 在输出浮点数时,会根据浮点数的长度和大小适当的进行舍去,或采用科学计数法输出。
布尔型 boolean
布尔类型代表某个事情的真或假,True表示真,False表示假,True 和 False 是 Python 中的关键字,输入时要注意首字母大写:
sex = True gender = False print("sex: ", sex) print("gender: ", gender)
执行结果:
sex: True
gender: False
布尔类型的True和False可以当做整数, True 相当于整数值 1,False 相当于整数值 0:
print(True+10) print(False+10)
执行结果:
11
10
字符串 String
Python中的字符串必须用单引号 ' 或双引号 " 括起来,
具体格式:
"字符串内容" '字符串内容'
简单使用:
str1 = '字符串1' str2 = "字符串2" str3 = 'I\'m a single!' str4 = r'Ru\noob' print(str1) print(str2) print(str3) print(str4)
执行结果:
字符串1
字符串2
I'm a single!
Ru\noob
- 字符串的内容可以包含字母、标点、特殊符号、中文等全世界的所有文字,
- 可以使用反斜杠
\
转义特殊字符,如果不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串
字符串换行:
想换行书写一个较长的字符串,需要在每行的行尾添加反斜杠\
:
str5 = 'Reduce the indexing time and CPU load \ with pre-built Python packages shared indexes \ Download pre-built shared indexes.'
三个双引号"""
或者三个单引号'''
也可以换行书写字符串:
str6 = '''Reduce the indexing time and CPU load with pre-built Python packages shared indexes Download pre-built shared indexes.'''
列表 List
列表会将所有元素都放在一对中括号[ ]
里面,相邻元素之间用逗号,
分隔;
列表中元素个数没有限制,只要是 Python 支持的数据类型就可以,但同一列表中只放入同一类型的数据,这样可以提高程序的可读性;
创建列表实例:
num_list = [1, 2, 3, 4, 5, 6] language_list = ['java', "c++", "Python"] print(num_list) print(language_list)
执行结果:
[1, 2, 3, 4, 5, 6]
['java', 'c++', 'Python']
元组 tuple
元组和列表类似,也是由一系列按特定顺序排序的元素组成。
元组和列表的不同之处在于:
- 列表的元素是可以更改的,包括修改元素值,删除和插入元素,所以列表是可变序列;
- 而元组一旦被创建,它的元素就不可更改了,所以元组是不可变序列,因此元组用于保存无需修改的内容。
创建元组:
age_tuple = [16, 17, 18, 19, 20] print(age_tuple)
执行结果:
[16, 17, 18, 19, 20]
字典 dict
字典是一种无序可变的序列,在这种序列中,每个元素都以key-value的方式被保存,就像 json字符串那样。
创建字典语法:字典中的元素都包含两部分,分别是键(key)和值(value),键和值之间使用冒号:
分隔,相邻元素之间使用逗号,
分隔,并且同一字典中的key必须唯一,不能重复。
dict_name = {'key':'value1', 'key2':'value2', ...}
创建字典实例:
user = {'name':'皓明', 'age':18, 'sex':'男'} print(user) #type() 函数查看变量类型 print(type(user))
执行结果:
{'name': '皓明', 'age': 18, 'sex': '男'}
<class 'dict'>
3、类型转换
函 数 | 作 用 |
---|---|
int(x) | 将 x 转换成整数 |
float(x) | 将 x 转换成浮点数 |
str(x) | 将 x 转换为字符串 |
bool() | 将 x 转换成布尔值 |
转换成整数类型
print('=====================字符串转整数=============================') a = '345' print(type(a)) print(type(int(a))) print('=====================浮点数转整数=============================') b = 3.45 print(type(b)) print(int(b)) print(type(int(b))) print('=====================布尔值转整数=============================') c = True print(type(c)) print(int(c)) print(type(int(c))) d = False print(type(d)) print(int(d)) print(type(int(d)))
执行结果:
- 如果将浮点数转成整数,那么返回的值是小数点前面的数
- 如果字符串中包含小数点或字母等非法字符(如‘1.23’或‘123ab’),在转换成整数时会报错
=====================字符串转整数============================= <class 'str'> <class 'int'> =====================浮点数转整数============================= <class 'float'> 3 <class 'int'> =====================布尔值转整数============================= <class 'bool'> 1 <class 'int'> <class 'bool'> 0 <class 'int'>
转换成字符串
print('=====================整数转字符串=============================') e = 123 print(type(e)) print(str(e)) print(type(str(e))) print('=====================浮点数转字符串=============================') f = 1.23 print(type(f)) print(str(f)) print(type(str(f))) print('=====================布尔值转字符串=============================') print(str(c)) print(str(d))
执行结果:
=====================整数转字符串=============================
<class 'int'>
123
<class 'str'>
=====================浮点数转字符串=============================
<class 'float'>
1.23
<class 'str'>
=====================布尔值转字符串=============================
True
False
转换成浮点数
print('=====================字符串转浮点数=============================') g = '3.45' print(type(g)) print(float(g)) print(type(float(g))) print('=====================整数转浮点数=============================') h = 345 print(type(h)) print(float(h)) print(type(float(h)))
执行结果:
=====================字符串转浮点数=============================
<class 'str'>
3.45
<class 'float'>
=====================整数转浮点数=============================
<class 'int'>
345.0
<class 'float'>
转换成布尔值
print('=====================整数转布尔值=============================') i = 2 print(type(i)) print(bool(i)) print(type(bool(i))) j = 0 print(type(j)) print(bool(j)) print(type(bool(j))) print('=====================字符串转布尔值=============================') k = 'abc' print(type(k)) print(bool(k)) print(type(bool(k))) l = '' print(type(l)) print(bool(l)) print(type(bool(l)))
执行结果:
- 非0整数转为布尔值返回True,整数0转为布尔值返回False
- 非0浮点数转为布尔值返回True,浮点数0.0转为布尔值返回False
- 只要字符串、列表、元组、字典中有内容,那么在转为布尔值的时候就返回True
=====================整数转布尔值============================= <class 'int'> True <class 'bool'> <class 'int'> False <class 'bool'> =====================字符串转布尔值============================= <class 'str'> True <class 'bool'> <class 'str'> False <class 'bool'>
加载全部内容