基础知识篇介绍python编程所需的基本知识,如数据类型,判断循环语句,输入输出,函数定义和调用,文件I/O等。
本篇文章介绍变量类型,类型转换和输出print三个知识。
一、python变量类型
python的变量类型不需要类型声明,声明变量的同时需要赋值,赋值后就会在内存中创建,并且自动识别类型,赋予该变量其类型。
l=["a",2,3] # 列表类型
a=3 # 整数类型
b=4.01 # 浮点数类型
print(l)
print(a)
print(b)
输出结果如下:
['a', 2, 3]
3
4.01
1. 多个变量赋值
可用连等号,或者等号左右两边有相同数量的变量和常量一一对应,如下:
l=["a",2,3]
a=b=c=3
d,e=4.01,["a",2,3]
f=l
print(a,b,c,d)
print(e,f)
输出格式如下:
3 3 3 4.01
['a', 2, 3] ['a', 2, 3]
2. 数据类型
python定义了如下五种数据类型:
(1)数字Numbers:整数int,长整型long,浮点数float,复数complex;
(2)字符串String:字符也当作字符串处理,由数字,字母和下划线组成,可用单引号或双引号;
(3)列表List:有序的对象集合,列表里每个元素可以是不同类型,用 "[ ]" 标识,且可以重新赋值,根据下标存取和修改数据,可添加新元素,删除元素;
(4)元组Tuple:元组中每个元素可以是不同类型,用 " ( ) " 标识,不能删除和修改元素,也不可以添加新元素,但可以删除整个元组,相当于只读列表;
(5)字典Dictionary:无序的对象集合,通过键来存取,用 “{ }” 标识,由索引key和对应的值value组成,添加只需要添加key和赋予相应的value即可。
关于元组,列表和字典详细的更新和访问见下一篇博客,暂且举例如下:
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.3e+18 | .876j |
-0490 | 535633629843L | -90. | -.6545+0J |
-0x260 | -052318172735L | -32.54e100 | 3e+26J |
0x69 | -4721885298529L | 70.2E-12 | 4.53e-7j |
补充:
(1)元组和列表都可以互相包含,二者里面的每个元素都可以是任意类型;
(2)long类型只存在于python 2.X版本中,python 3.X版本该类型被移除,使用int代替;
(3)复数定义可以用a+bj,也可以complex(a, b);
a=31924361222222215478965214
d=3.14j
e=complex(1.2,3)
print(d)
print(a)
print(e)
print(type(a),type(d))
输出示例:
3.14j
31924361222222215478965214
(1.2+3j)
<class 'int'> <class 'complex'>
二、python数据类型转换
数据类型转换只需要将数据类型作为函数名,后面括号写上变量名或者常量即可:
函数 | 描述 |
---|---|
将x转换为一个整数 | |
将x转换到一个浮点数 | |
创建一个复数 | |
将对象 x 转换为字符串 | |
将对象 x 转换为表达式字符串 | |
用来计算在字符串中的有效Python表达式,并返回一个对象 | |
将序列 s 转换为一个元组 | |
将序列 s 转换为一个列表 | |
转换为可变集合 | |
创建一个字典。d 必须是一个序列 (key,value)元组。 | |
转换为不可变集合 | |
将一个整数转换为一个字符 | |
将一个整数转换为Unicode字符 | |
将一个字符转换为它的整数值 | |
将一个整数转换为一个十六进制字符串 | |
将一个整数转换为一个八进制字符串 |
需要注意以下几点:
(1)float和int可以转化为complex,但反过来不行,不能转化;
(2)复数complex可以转化为string(废话这是当然的),转化出来的字符串带了括号和加号,括号和加号都当作了字符串的一部分,加入长度和;
(3)转化为列表list(s)和元组tuple(s),此时的 s 必须是序列,例如字符串,列表,元组,不能是数字,将字符串转化完,列表和元组中就是一个个的单个字符;
a="123sa"
b=list(a)
c=tuple(a)
print(b)
print(c)
输出样例:
['1', '2', '3', 's', 'a']
('1', '2', '3', 's', 'a')
l=["a",2,3]
t1=('b',2,3,l)
print(t1)
print(tuple(l))
print(list(t1))
输出样例:
('b', 2, 3, ['a', 2, 3])
('a', 2, 3)
['b', 2, 3, ['a', 2, 3]]
三、输出语句print
1. 输出普通变量
直接输出即可,格式为print(变量名),如:
l=["a",2,3] #定义变量
a=3
b=4
print(l) #输出结果
print(a)
print(b)
print(a,l) #输出多个用逗号隔开
输出结果显示:
['a', 2, 3]
3
4
3 ['a', 2, 3]
可以看到,输出多个变量自动会在同一行用空格隔开,一句print会自动换行。
2. 选择性输出字符串,列表,元组和字典中的元素
涉及到for语句,以及关于各自的访问操作。这个详见下篇博客关于四者的具体详细阐述。
3. 特殊要求的一些操作
(1)输出列表中的元素以逗号为分隔符
可以看到,默认输出是以空格为空格符的,要以逗号为分隔符有以下几种情况:
——简单的for循环打印出的list是一行一个元素:
l=[1,2,3,4]
for i in l:
print(i)
输出结果:
1
2
3
4
——以逗号或空格为分隔符的输出结果可以如下操作,但此时最后一个元素后面也是带空格或者逗号的:
l=[1,2,3,4]
for i in l:
print(i,end=' ')#以空格为分隔符
输出结果为:1 2 3 4 (注意,此时4后面还有一个空格)
l=[1,2,3,4]
for i in l:
print(i,end=', ')#以逗号为分隔符
输出结果为:1,2,3,4, (注意,此时4后面还有一个逗号)
——去掉最后一个元素的逗号和空格可如下操作:
#此时最后一个元素后面没有空格和逗号啦!!
l = [1,2,3,4]
print(" ".join(str(i) for i in l))
l = [1,2,3,4]
print(",".join(str(i) for i in l))
(2)输出数字和字符串混合的结果
有两种输出方式:
# 第一种,类似于C语言,用%d说明类型,然后后面加上变量名
print("%d is odd" % a)
# 第二种,直接讲变量名与字符串连起来,逗号隔开
print(a,"is odd")
注意:此时用逗号隔开,二者之间默认以空格结尾,若没有空格,就str(a)+"is odd",意义是拼成一个字符串输出。