python第二天
格式化输出
格式化符号:
- %s 字符串(重点)
- %d 有符号的十进制整数(重点)
- %f 浮点数(重点)
# 我的名字是龙啸天-----%s---字符串
name = '龙啸天'
print('我的名字是%s' % name)
# 今年我的年龄是25岁----%d--十进制整数
age = 25
print('今年我的年龄是%d岁' % age)
# 我的体重是64.5公斤----%f---浮点数
weight = 64.5
print('我的体重是%f公斤' % weight)
print('我的体重是%.2f公斤' % weight) # 默认保留6位小数,%后增加.2表示保留2位小数
# 我的学号是0001----%04d---4位数不足以0补全超出原样输出
stu_id = 1
print('我的学号是%04d' % stu_id)
记住:
- %04d: 表示输出的整数显示4位数,不足的以0补全,超出的原样输出
- %.2f: 表示小数点后显示2位数
# 我的名字是小李飞刀,今年18岁了
name = '小李飞刀'
age = 18
print('我的名字是%s,今年%d岁了' % (name, age))
# 我的名字是小李飞刀,今年25岁了,体重65.5公斤,学号是0001
name = '小李飞刀'
age = 25
weight = 65.5
stu_id = 1
print('我的名字是%s,今年%d岁了,体重%.1f公斤,学号是%04d' % (name, age, weight, stu_id))
%s拓展
# 我的名字是小李飞刀,今年28岁了,体重70.5公斤--%s统一格式化字符串
name = '小李飞刀'
age = 28
weight = 70.5
print('我的名字是%s,今年%s岁了,体重%s公斤' % (name, age, weight))
f'{表达式}'输出
---简单高效,在生产环境中大量使用
# 我的名字是小李飞刀,今年28岁了,体重70.5公斤--f'{表达式}'统一格式化字符串,简化代码量
name = '小李飞刀'
age = 28
weight = 70.5
print(f'我的名字是{name},今年{age}岁了,体重{weight}公斤')
转义字符
\n: 换行
# 转义字符---\n---换行
print('hello\npython')
\t:制表符,4个空格,一个tab键的距离。
# 转义字符---\t---制表符,一个tab键的距离(4个空格)
print('hello\tpython')
结束符
print('输出的内容', end = '\n')
# 结束符---end="\n"--print('输出内容',end='\n')
print('i love', end='\n')
print('python', end='\t')
print('hello', end='...')
print('python', end='\n')
输入
语法: input('输入信息')
特点:
- 当程序执行时,等待用户输入,输入完成之后才向下执行
- 在python中,input接收到用户输入后,存储到变量中,主便使用
- 在python中,input会把接收到的数据当做字符串处理
# 书写input
input('输入信息')
# 查看input特点--等待用户输入后才再往下执行
input('请输入密码')
# 查看input特点--将输入信息存储到变量中
password = input('请输入信息')
print(f'你输入的密码是{password}')
# 查看input特点--将输入信息当做字符串处理
print(type(password))
数据类型转换
函数 | 说明 |
---|---|
int(x) | 将x转换为整数 |
float(x) | 将x转换为浮点数 |
str(x) | 将x转换为字符串 |
eval(str) | 计算字符串的有效表达式并返回一个对象 |
tuple(x) | 将序列x转换成元组 |
list(x) | 将序列x转换成列表 |
"""
1、input输入数据
2、检测输入数据的类型
3、将类型转换为int
4、检测是否转换成功
"""
password = input('请输入密码:')
print(type(password))
num = int(password)
print(type(num))
# float() 将数据类型转换成浮点型
num = 1
print(type(num))
print(float(num))
print(type(float(num)))
# str() 将数据转换成字符串
num2 = 100
print(type(num2))
print(type(str(num2)))
# list() --将数据序列转换成列表
l1 = (100, 200, 300)
print(list(l1))
# tuple() --将数据类型转换成元组
t1 = [100, 200, 300]
print(tuple(t1))
# eval() ---将数据类型转换成它本来原有的类型
str3 = '1'
str4 = '1.23'
str5 = '(100, 200, 300)'
str6 = '[100, 200, 300]'
print(type(eval(str3)))
print(type(eval(str4)))
print(type(eval(str5)))
print(type(eval(str6)))
运算符
算数运算符
运算符 | 运算说明 | 举例 |
---|---|---|
+ | 加 | 1+2=3 |
- | 减 | 4-1=3 |
* | 乘 | 2*3=6 |
/ | 除 | 8/2=4 |
** | 幂 | 3**3=27 |
// | 取商 | 10//3=3 |
% | 取余 | 10%3=1 |
() | 括号 | 10/(3+2)=2 |
运算符优先级:()--括号> **--幂 > *--乘、/--除、//--取商、%--取余 > +--加、— --减
赋值运算符
= 赋值: 将=右边的值赋值给左边的变量
-
单变量赋值
# 单变量赋值 num = 10 print(num)
-
多变量赋值
# 多变量赋值 num1, float1, str1 = 20, 10.8, 'python' print(num1) print(float1) print(str1)
-
多变量赋相同值
# 多变量赋相同的值 a = b = c = 30 print(a) print(b) print(c)
复合赋值运算符
运算符 | 描述 | 说明 |
---|---|---|
+= | 加法赋值运算符 | a += b,相当于a+b再赋值于a |
-= | 减法赋值运算符 | a -= b,相当于a-b再赋值于a |
*= | 乘法赋值运算符 | \(a *= b\),相当于a*b再赋值于a |
/= | 除法赋值运算符 | a /= b 相当于把a/b的值再赋值给a |
//= | 取商赋值运算符 | a //= b ,相当于把a/b的商(取整)值再赋值给a |
%= | 取余赋值运算符 | a %= b,相当于把a/b的余数再赋值给a |
**= | 幂赋值运算符 | \(a**= b\) , 相当于把\(a**b\)的值再赋值给a |
注:typora开启数学计算公式:\(公式内容\)---公式内容写在两个$符号中
# 加法赋值运算符
a = 1000
a += 1
print(a)
# 减法赋值运算符
a = 100
a -= 2
print(a)
# 乘法赋值运算符
a = 10
a *= 5
print(a)
# 除法赋值运算符
a = 100
a /= 5
print(a)
# 先算赋值运算符右边的表达式,再进行赋值运算
a = 10
a *= 2 + 3
print(a)
比较运算符
运算符 | 描述 | 举例 |
---|---|---|
== | 相等。结果相等,则为True,否则为False | a==b为True |
!= | 不等。结果不相等,则为True,否则为False | a!=b为True |
> | 大于。左侧大于右侧,则为True,否则为False | a>b为True |
< | 小于。左侧小于右侧,则为True,否则为False | a<b为True |
>= | 大等于。左侧大等于右侧,则为True,否则为False | a>=b为True |
<= | 小等于。左侧小等于右侧,则为True,否则为False | a<=b为True |
逻辑运算符
运算符 | 表达式 | 描述 | 实例 |
---|---|---|---|
and | x and y | 布尔“与” | True and False,返回False |
or | x or y | 布尔“或” | True and False,返回True |
not | not x | 布尔“非” | not True返回False |
a = 10
b = 20
c = 30
# and --与--只有全部为真,结果才为真,只要一个为假都为假
# print(a < b and a < c and c > b) ---表达式用小括号连接起来
print((a < b) and (a < c) and (c > b))
print((a < b) and (a < c) and (a > c))
a = 10
b = 20
c = 30
# or --或--只要有一个真,结果就为真,只有全部为假才为假
print((a > b) or (a > c) or (c > b))
print((a > b) or (a > c) or (a > c))
a = 10
b = 20
c = 30
# not --非--取反值
print(not (a < b))
print(not (a > b))
数字的逻辑运算
a = 0
b = 1
c = 3
# and 运算符--只要有一个值为0,则结果为0,否则结果为最后一个非0数字
print(a and b)
print(b and a)
print(a and c)
print(c and a)
print(b and c)
print(c and b)
# or 运算符--只有所有值为0结果才为0,否则结果为第一个非0数字
print(a or b)
print(a or c)
print(b or c)