一、输入与输出
1、print 输出
第一种:直接输出
print("hello world")
name = "python"
age = 3
print("项目:",name,"学龄:",age)
第二种: 格式化输出 【旧版本代码中常见,现在不推荐使用】
%c | 单字符 |
%s | 字符串 |
%d %i | 十进制整数 |
%x %X | 十六进制整数 |
%o | 八进制整数 |
%f | 小数 |
%e %E | 科学计数法 |
可以控制精度
name = "python"
age = 3
print("项目:%s,学龄:%d" %(name,age)) #项目:python,学龄:3
a = 1234
print("%d" %a) #1234
print("%+d" %a) #+1234
print("%10d" %a) # 1234 右对齐前面补了六个空格
print("%010d" %a)#0000001234 右对齐用0补齐
print("%10.2f" %a)# 1234.00 右对齐精度为2(小数点后保留两位
a = 25
print("%d" % a) #25 十进制
print("%o" % a) #31 八进制
print("%#o" % a) #0o31 带前缀的八进制
print("%x" % a) #19 十六进制
print("%#x" % a) #0x19 带前缀的十六进制
第三种:format()格式化函数
使用{}进行占位,在输出语句“”的后面用 . 来引用format函数
语法格式:print("{}".format())
print("{} and {}".format("hello","world")) #hello and world
print("{a} and {b}".format(b="world",a="hello")) #hello and world 可以不用关format输入顺序
#控制宽度
s = "hello"
print("{:1}".format(s))
print("{:25}".format(s)) #hello 默认左对齐
print("{:>25}".format(s)) #hello 右对齐
print("{:^25}".format(s)) # hello 居中对齐
print("{:*^25}".format(s)) #**********hello********** 居中对齐
# 控制精度
num = 1234.567891789
print("{}".format(num)) #1234.567891789
print("{:.2f}".format(num)) #1234.57
print("{:.2}".format(num)) #1.2e+03
# 进制转换
a = 25
print("{:d}".format(a)) #25
print("{:#o}".format(a)) #0o31
print("{:#x}".format(a)) #0x19
print("{:#b}".format(a)) #0b11001
#千位分隔符
n = 1234567890
print("{:,}".format(n)) #1,234,567,890
第四种:f-string 可以解析任意的数据类型 【python3.6之后引入的输出方法】
在输出语句""的前面加个f或者F表示解析,""里面使用{}将变量括起来
语法格式:print(f"姓名 {name}, 年龄 {age}")
a = "hello"
b = "world"
print(f'{a} and {b}') #hello and world
num = 1234.5678
print(f'{num}') #1234.5678
print(f'{num:25}') # 1234.5678
print(f'{num:^25}') # 1234.5678
print(f'{num:^25.2f}')# 1234.57
1.2 、print输出的换行形式
print自动换行的,若不想自动换行,可以这样设置:
第一种:使用转译字符
\n 回车换行 \t 制表符位
print("第1行\n""第2行\n""第3行\n")
"""
第1行
第2行
第3行
"""
第二种:使用参数end
功能:指定换行的行为,可以为空格,空字符、\t、\n、逗号等
print("第1种",end = " ")
print("第2种",end = " ")
print("第3种")
#第1种 第2种 第3种
print("第1种",end = ",")
print("第2种",end = ",")
print("第3种")
#第1种,第2种,第3种
print("第1种",end = "\t")
print("第2种",end = "\t")
print("第3种")
#第1种 第2种 第3种
eg:打印一个九九乘法表
#九九乘法表
for i in range(1,10): #对应行
for j in range(1,i+1): #对应列
print(f'{j}X{i}={i*j}',end=" ")
print() #提供一个换行
"""
1X1=1
1X2=2 2X2=4
1X3=3 2X3=6 3X3=9
1X4=4 2X4=8 3X4=12 4X4=16
1X5=5 2X5=10 3X5=15 4X5=20 5X5=25
1X6=6 2X6=12 3X6=18 4X6=24 5X6=30 6X6=36
1X7=7 2X7=14 3X7=21 4X7=28 5X7=35 6X7=42 7X7=49
1X8=8 2X8=16 3X8=24 4X8=32 5X8=40 6X8=48 7X8=56 8X8=64
1X9=9 2X9=18 3X9=27 4X9=36 5X9=45 6X9=54 7X9=63 8X9=72 9X9=81
"""
2、input输入
在python中可以直接调用内置函数input进行输入,但是input的输入会将内容都默认为字符串。
语法格式:变量 = input("输入的提示文字[可有可无]")
#输入你的名字
name = input("输入你的名字》》")
print(name)
"""
输入你的名字》》python
python
"""
#输入年龄
age = int(input("输入年龄》》")) #因为input默认的输入是str类型的所以输入整数时要强转一下
print(age)
"""
输入年龄》》18
18
"""
利用分割同时输入多个数
语法a,b…… = map(需要的数据类型,input().split())
#同时输入两个数并计算和
a,b = map(int,input(">>").split())
print(a+b)
"""
>>1 2
3
"""
3、数据类型转换
将一种数据类型转换成另外一种数据类型。例如:将input输入的字符串12,转换成整数12。分为两种形式:隐式/自动类型转换、强制类型转换
3.1 隐式类型转换
a = 4
b = 2
c = a/b
print(type(a)) #<class 'int'>
print(type(b)) #<class 'int'>
print(type(c)) #<class 'float'>
3.2 显式/强制类型转换
函数 | 说明 |
int(x [,base]) | 将x转换为一个整数【base是要指定的进制可选】 |
float(x) | 将x转换为一个浮点数 |
complex(real [,imag]) | 创建一个复数,real为实部,imag为虚部 |
str(x) | 将对象 x 转换为字符串 |
repr(x) | 将对象 x 转换为表达式字符串 |
eval(str) | 用来计算在字符串中的有效Python表达式,并返回一个对象 |
tuple(s) | 将序列 s 转换为一个元组 |
list(s) | 将序列 s 转换为一个列表 |
chr(x) | 将一个整数转换为一个Unicode字符 |
ord(x) | 将一个字符转换为它的ASCII整数值 |
hex(x) | 将一个整数转换为一个十六进制字符串 |
oct(x) | 将一个整数转换为一个八进制字符串 |
bin(x) | 将一个整数转换为一个二进制字符串 |
二、选择结构
1、条件语句 if
条件语句,也叫作选择语句、判断语句。根绝特定条件判断是否成立,执行不同的语句段。简单来说,满足条件执行,不满足不执行。
条件语句是使用关键字 if 做判断,根据不同情况结合不同的关键字else 或者 elif来进行判断,总来的来说,有三种形式。
语法格式:if else elif后面以冒号结尾,执行语句要缩进
第一种:单分支
if 表达式:
代码块[执行语句]
表达式就是特定的条件,if进行判断,结果是布尔值【True和False】
执行逻辑:表达式为True,执行代码块;表达式为False,不执行
第二种:双分支
if 表达式:
执行语句1
else:
执行语句2
执行逻辑:表达式True,执行语句1;为False,执行语句2
第三种:多分支
if 表达式1:
执行语句1
elif 表达式2:
执行语句2
elif 表达式3:
执行语句3
else:
执行语句n
执行逻辑:先判断表达式1,为True执行语句1,为False判断表达式2,表达式2
为True执行表达式,为False继续判断表达式3……
第四种:分支嵌套
if 表达式1:
if 表达式1-1:
执行语句1-1
else:
执行语句1-2
elif 表达式2:
if 表达式2-1:
执行语句2-1
else:
执行语句2-2
else:
执行语句3
注意事项:
①参与判断的表达式可以是任意合法表达式,但是结果只有True和False
②else不能单独出现,必须和前面的未被匹配的 if 进行配对
2、条件语句 match...case
在Python3.10版本以后,Python解释器推出了match…case语句,提供了一种更强大的模式匹配方法。
类似于C语言中的switch...case...default语句。
match 表达式:
case 模式1:
执行语句1
case 模式2:
执行语句2
……
case _:
其他情况的归属
eg:练习1.从键盘输入一个月份,判断它所处的季节
month = int(input("请输入年份>>"))
match month:
case 12|1|2: #12|1|2表示在12,1,2三个数任意满足一个即可
print("冬季")
case 3|4|5:
print("春季")
case 6|7|8:
print("夏季")
case 9|10|11:
print("秋季")
case _:
print("input error...")
eg:练习2. 从键盘上输入一个人的年龄, 判断他属于人生哪个阶段,如果年龄在1(包含)~12之间,输出‘童年’, 如果年龄在12(包含)~18之间,输出‘少年’, 如果大于等于18岁,则输出成年, 如果输入非数字或者小于1,提示输出错误
age = int(input("请输入一个年龄"))
match age:
case x if 1<=x<12: #x表示输入的age 满足age在1到12之间则被执行
print("童年")
case x if 12<=x<18:
print("少年")
case x if x>=18:
print("成年")
case _:
print("输入有误,重新输入")
标签:02,语句,format,python,基础,case,输入,print,表达式
From: https://blog.csdn.net/2303_76544787/article/details/143494983