用来查询变量所指的对象类型
>>> a, b, c, d = 20, 5.5, True, 4+3j
>>> print(type(a), type(b), type(c), type(d))
基础数据类型
# coding:utf-8
字符串 = ""
布尔型 = True
整数 = 1
浮点数 = 0.1
if __name__ == '__main__':
print(type(字符串))
print(type(布尔型))
print(type(整数))
print(type(浮点数))
判断变量是否为某种类型:
>>> a = 111
>>> isinstance(a, int)
True
>>>
>>> class A:
... pass
...
>>> class B(A):
... pass
...
>>> isinstance(A(), A)
True
>>> type(A()) == A
True
>>> isinstance(B(), A)
True
>>> type(B()) == A
False
注:Python3 中,bool 是 int 的子类
>>> issubclass(bool, int)
True
字符串变量 = input("提示信息:")
# 可以打印一个值,也可以打印多个值, # 重要的参数: # sep:设置多个之间是用什么值连接,默认是空格字符' ' # end:设置最后一个值后面追加什么值,默认换行字符'/n' # 这两个参数谁在前面谁在后面都可以,但是这两个值需要放在其他要打印的值得后面 print("name", ":",end='', sep='----')
int() float() bool() str() list() tuple() dict() set()
# 1. 提示用户输入苹果的单价
price = float(input("苹果的单价:"))
# 2. 提示用户输入苹果的重量
weight = float(input("苹果的重量:"))
# 3. 计算金额
money = price * weight
print(money)
格式化字符串就是把一个或者多个值以某种格式插入到字符串中进行格式化,通过print拼接成一个字符串显示出来
python格式化字符串:
%s 字符串格式
%d 整数格式
%f 浮点数格式 浮点数的值默认保留小数点后六位
%% 输出%
注:%d和%f要求值必须得是数字形式
name = 'tom'
age = '29'
# 一个值得时候
s = '我叫%s,我今年5岁了' % name
print(s)
# 有两个值需要进行格式化的时候,需要把变量放在一个元组里面
s = '我叫%s,我今年%d岁了' % (name, age)
print(s)
# 数字5 最小打印宽度是5
# - 左对齐打印,空格补在右边
# 0 表示宽度不足的时候补0而不是空格,智能用在数字里面
# .1 表示小数点后保留1位小数,只能用于有小数位的情况
s = '我叫%-5s,我今年%05.1f岁了' % (name, age)
print(s)
拓展:
# 如何把字典里的值插入到字符串中
# 直接把字典的名字放在百分号后面,把键放在括号里面,键必须字符串,而且键不能加引号
a = {'name': 'tome', 'age': 19}
s = '我叫%(name)s,我今年%(age)05d岁了' % a
Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能
Python format 格式化函数 | 菜鸟教程
f-string 是 python3.6 之后版本添加的,称之为字面量格式化字符串,是新的格式化字符串的语法。之前我们习惯用百分号 (%):
f-string 格式化字符串以 f 开头,后面跟着字符串,字符串中的表达式用大括号 {} 包起来,它会将变量或表达式计算后的值替换进去,实例如下:
>>> name = 'Runoob'
>>> f'Hello {name}' # 替换变量
'Hello Runoob'
>>> f'{1+2}' # 使用表达式
'3'
>>> w = {'name': 'Runoob', 'url': 'www.runoob.com'}
>>> f'{w["name"]}: {w["url"]}'
'Runoob: www.runoob.com'
用了这种方式明显更简单了,不用再去判断使用 %s,还是 %d。
在 Python 3.8 的版本中可以使用 = 符号来拼接运算表达式与结果:
>>> x = 1
>>> print(f'{x+1}') # Python 3.6
2
>>> x = 1
>>> print(f'{x+1=}') # Python 3.8
x+1=2
转义字符 | 描述 |
---|---|
\\ | 反斜杠符号 |
\' | 单引号 |
\" | 双引号 |
\n | 换行 |
\t | 横向制表符(tab) |
如果需要字符串输出”\n”或者”\t”, 在字符串前面加 r,就代表转义字符不转义,原样输出
print("hello\tworld\nhello\\world")
print(r"hello\tworld\nhello\\world")
Python数据类型转换
函数 | 描述 |
---|---|
int(x [,base]) |
将x转换为一个整数 |
float(x) |
将x转换到一个浮点数 |
complex(real [,imag]) |
创建一个复数 |
str(x) |
将对象 x 转换为字符串 |
repr(x) |
将对象 x 转换为表达式字符串 |
eval(str) |
用来计算在字符串中的有效Python表达式,并返回一个对象 |
tuple(s) |
将序列 s 转换为一个元组 |
list(s) |
将序列 s 转换为一个列表 |
set(s) |
转换为可变集合 |
dict(d) |
创建一个字典。d 必须是一个 (key, value)元组序列。 |
frozenset(s) |
转换为不可变集合 |
chr(x) |
将一个整数转换为一个字符 |
ord(x) |
将一个字符转换为它的整数值 |
hex(x) |
将一个整数转换为一个十六进制字符串 |
oct(x) |
将一个整数转换为一个八进制字符串 |