Python中的基本数据类型

本文详细讲解了Python中变量命名规则、赋值、引用,以及基本数据类型(整型、浮点型、布尔型和字符串)的操作。涉及类型转换、数值计算、字符串操作,还有常用数值模块和实例演示。

目录

变量 

变量命名规则

变量赋值

变量引用

 其它

基本数据类型

类型

不同类型的转换

数值类型的计算

字符串的计算

字符串的格式化

其它

常见的数值模块

例题


变量 

变量命名规则

1. 变量只能由字母、数字和下划线构成,并且数字不能作为开头
2. 关键字和内置函数不能作为变量名。可以通过观察颜色判断变量名是否为关键字或内置函数,如if和dir都会改变颜色,故不能作为变量名

a1 #正确
_abc #正确
e_1 #正确
2p #错误
if #错误
dir #错误

变量赋值

变量能通过“=”进行赋值

a = 'this is python'
b = 2

变量引用

 变量可以通过input()输入,通过print()输出。input()括号中的内容为对于用户的提示性信息,不会影响到x的赋值。input()需要用变量接收,而print()不能用变量接收。通过input输入的数据类型会被自动转换为字符串,通过print输出的数据类型会被自动转换为数值型

x = input('请输入一个数:')
print(x)

 其它

变量在重新赋值后,之前保存的值会消失。这是因为每个值都对应着一个地址(id),而变量名便是通过地址找到值的,如果变量被重新赋值,就会根据新的地址找到新的值,原来的值便消失了。可以通过id()查看值的地址

x = 3
print(id(x))
#结果为:2618405224752

基本数据类型

类型

类型说明例子
整型(int)整数-1,0,1
浮点型(float)小数0.1,1.23
布尔型(bool)True为真,False为假True,False
字符串(str)一串字符,用(单,双,三)引号引起来

'this',"is",'''Python'''

可以通过type()来查看数据类型

print(type(3)) #int
print(type(1.0)) #float
print(type(True)) #bool
print(type('3')) #str

不同类型的转换

转换方法:将待转数据用()括起来,然后在前面加上要转成的数据类型

1. 浮点型转整型:去掉小数部分,保留整数部分(没有四舍五入)

2. 布尔型转整型:True为1,False为0

3. 字符串转整型:只有内容为整数的字符串才能转成整型

4. 整型转浮点型:将整数变为小数,在后面加上.0

5. 布尔型转浮点型:True为1.0,False为0.0

6. 字符串转浮点型:只有内容为数字的字符串才能转成浮点型

7. 整型转布尔型:非0为True,0为False

8. 浮点型转布尔型:非0.0为True,0.0为False

9. 字符串转布尔型:非空字符串为True,空字符串为False

10. 任何型转字符串:给原来内容加上引号

int(9.99) #9
int(True) #1
int(False) #0
int('10') #10
float(1) #1.0
float(True) #1.0
float(False) #0.0
float('4.5') #4.5
bool(12) #True
bool(0) #False
bool(0.0001) #True
bool(0.0) #False
bool('0') #True
bool('') #False
str(6) #'6'
str(1.2) #'1.2'
str(True) #'True'

数值类型的计算

符号含义例子
+加法1+1=2
-减法5-2=3
*乘法2*3=6
/除法9/3=3.0
**幂运算2**3=8
//整除15//6=2
%取余15%6=3

布尔型也可以计算,True相当于1,False相当于0

字符串的计算

1. 字符串的加和乘:字符串的加法和乘法运算本质上是字符串的拼接

'a'+'b'+'c' #'abc'
'3'+'4' #'34'
'abc'*3 #'abcabcabc'

2. 字符串的拼接

方法一:利用字符串的格式化来拼接

a = 'this'
b = 'is'
c = 'python'
print('%s %s %s' % (a,b,c))
#this is python

其中%s相当于占位符,第一个%s为变量a占位,第二个%s为变量b占位,第三个%s为变量c占位

方法二:利用join方法拼接

a = 'this'
b = 'is'
c = 'python'
print(' '.join([a,b,c]))
#this is python

将.join前面的''中的内容插入到变量a,b,c之间

方法三:利用format方法拼接

a = 'this'
b = 'is'
c = 'python'
print('{} {} {}'.format(a,b,c))
#this is python
print('{2} {0} {1}'.format(a,b,c))
#                          0 1 2
#python this is

{}相当于占位符,为后面的变量a,b,c占位。且a,b,c的编号分别为0,1,2,{}中的数字为2,则该{}为编号2所对应的变量c占位;{}中的数字为0,则该{}为编号0所对应的变量a占位;{}中的数字为1,则该{}为编号1所对应的变量b占位

此外,还有format的简化版本

a = 'this'
b = 'is'
c = 'python'
print(f'{a} {b} {c}')
#this is python

f即为format的缩写,{}为其中的变量占位

字符串的格式化

格式化方式含义
%s将非字符串类型转成字符串

%d

格式化成整型之后转成字符串
%f格式化成小数之后转成字符串
%o输出八进制
%x输出十六进制
%e按科学计数法输出
%r按原样输出
%c格式化成ASCII码
print('%d' % 12.9) #12
print('%f' % 12) #12.000000
print('%o' % 12) #14
print('%x' % 12) #c
print('%e' % 1200) #1.200000e+03
print('%r' % '12') #'12'
print('%c' % 97) #a

1. %6d和%6f中的6表示最终字符串的长度为6,不够的话,在左边补空格

2. %06d和%06f中的06表示最终字符串的长度为6,不够的话,在左边补0

3. %-6d和%-6f中的-6表示最终字符串的长度为6,不够的话,在右边补空格

4. %-06d和%-06f中的-6表示最终字符串的长度为6,不够的话,在右边补0

5. %.2f中的.2表示保留2位小数(四舍五入)

print('%6d' % 12) #    12
print('%06d' % 12) #000012
print('%6f' % 12) #12.000000
print('%06f' % 12) #12.000000
print('%015f' % 12) #00000012.000000
print('%.2f' % 12) #12.00
print('%06.2f' % 12) #012.00

当%6d,%06d,%6f和%06f中的数字6小于字符串的长度时,会失去作用

其它

1. 可以通过len()来获取字符串数据的长度

2. chr()可以把数值转成对应的ASCII码

3. ord()可以把字符转成对应的ASCII码值

print(len('abc')) #3
print(chr(97)) #a
print(ord('a')) #97

常见的数值模块

1. 高精度模块(decimal)

可以使用decimal模块来做浮点数的精确计算

print(1.01-0.9) #0.10999999999999999
import decimal #导入别人已经写好了的方法
print(decimal.Decimal('1.01')-decimal.Decimal('0.9')) #0.11

2. 数学模块(math)

math模块有常见的数学函数

import math #导入别人已经写好了的方法
print(math.pi) #得到圆周率
#3.141592653589793

例题

1. 取出一个三位数的个位,十位和百位

x = 345
a = x%10 #取出个位数
b = int(x/10)%10 #取出十位数
c = x//100 #取出百位数
print(f'百位数是{c},十位数是{b},个位数是{a}')

2. 用户提供圆的半径,计算圆的面积(保留两位小数)

import math #导入math模块
r = float(input('请输入圆的半径:')) #获取半径并转为小数
s = math.pi*r*r #计算面积
print('圆的面积为%.2f' % s) #输出结果
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值