python基础语法--输入和输出

一、 输入 input()

python使用input输入变量,input输入的变量为字符串形式,可以通过其他方式转换为整型或其他类型。

(1)单行读入已知个数的字符串或数字

读入字符串

python 复制代码
# 单行读入字符串a,并给出一句输入提示 
a = input("请输入一个数:") 

# 单行读入含有一个空格的字符串,并按照空格分隔开,存进a,b中 
a, b = input().split()
 
# 单行读入含有一个逗号的字符串,并按照逗号分隔开,存进a,b中 
a, b = input().split(",")

读入数字

python 复制代码
# 单行读入单个整数b
b = int(input()) 
      
# 单行读入单个浮点数b 
b=float(input())
       
# 单行读入用空格隔开的两个整数a,b 
a, b = map(int,input().split())    

(2)单行读入不定个整数,储存在列表中

python 复制代码
# 单行读入不定个整数(整数之间用空格分隔), 从0开始存入列表a中
a = list(map(int,input().split()))

(3)先输入数字n,再输入n行数,每行一个数

python 复制代码
# 先输入一个整数, 表示个数
n = int(input())
# n行, 每行输入一个数字
for i in range(n):
    a = int(input())

或者:

python 复制代码
# 先输入一个整数, 表示个数
n = int(input())
# n行,每行输入一个整数
a = [int(input()) for i in range(n))]

(4)先输入数字n,再输入n行数,每行三个数,储存在三个列表中,用空格分隔

python 复制代码
# 输入一个整数,表示行数
n = int(input())
# 创建三个空列表
x=[]
y=[]
z=[]
# 输入n行,每行输入3个整数,整数之间使用空格分隔
for i in range(n):
    a, b, c = map(int,input().split())
    x.append(a)
    y.append(b)
    z.append(c)

二、输入 print()

(1) 单行输出已知个数的字符串或数字

python 复制代码
a = 1
b = 2
print(a, b) # 输出结果为:1 2

c = "HelloWorld"
print(a, b, c) # 输出结果为:1 2 HelloWorld

(2)格式化输出

可以调用方法format 并使用花括号作为占位符,从而得到格式化字符串。

最简单的方法就是使用内置函数format得到格式化字符串,它与字符串的方法format是等价的,如:

python 复制代码
a = 1
b = 1.2
print(f'a = {a}, b = {b}')

下面主要介绍字符串的方法format,不过相关细节都是相同的。

# 格式化输出字符串

python 复制代码
book = "《数据结构与算法》"
s = '买了一本书:{}'.format(book)
print(s)

# 也可以直接这样写
print('买了一本书:{}'.format(book))

# 输出结果为  买了一本书:《数据结构与算法》
python 复制代码
price 68.88
s='花了{},买了一本书:{}'.format(price,book)
print(s)
# 花了68.88,买了一本书:《数据结构与算法》

如果占位符 {} 中不指定参数,方法format的参数会按顺序依次匹配所有的占位符{}。

我们还可利用参数指定某个占位符使用哪个变量进行打印:

python 复制代码
# 占位符{}中可以指定位置参数,0表示方法format的第1个参数,1表示方法format的第2个参数
s = '花了{0},买了一本书:{1},只花了{0}!'.format(price,book)
print(s)
# 花了68.88,买了一本书:《数据结构与算法》,只花了68.88!

可以在方法format中指定关键字参数的名称和值,在占位符[}中指定关键字参数的名称。

python 复制代码
s = '花了{p},买了一本书:{b},只花了{p}!'.format(p = price, b = book)
print(s)

# 格式化输出整数

以某个进制的格式进行输出
python 复制代码
# 以十进制的形式输出
print('{:d}'.format(58)) # 58

# 以二进制的格式输出
print('{:b}'.format(58)) # 111010

# 以十六进制的格式输出(a~f是小写)
print('{x}'.format(58)) # 3a
# 以十六进制的格式输出(A~F是大写)
print('{:X}'.format(58)) # 3A
以某个精度的格式进行输出

将整数以浮点数的形式进行打印:

python 复制代码
# 浮点数
print('{:f}'.format(58)) # 58.000000

占位符 {} 使用冒号指定宽度,如果数字 的宽度没有达到指定的宽度,则在左边 使用空格进行补齐:

补充:如果字符串 的宽度没有达到指定的宽度,则在右边使用空格进行补齐:

python 复制代码
print('{:10}'.format(58))
print('{:10}'.format('58'))

打印3.1415926的三位:

python 复制代码
print('{:.3}'.format(3.1415926))

保留3.1415926三位小数进行打印:

python 复制代码
print('{:.3f}'.format(3.1415926))

同时指定宽度和精度进行打印:

python 复制代码
print('{:7.3f}'.format(3.1415926))

注意:这个小数点也占用一个宽度。

只取字符串中的前几位:

python 复制代码
print('{:.5}'.format('HelloWorld'))

只取字符串中的前几位,并以某个宽度进行打印:

python 复制代码
print('{:10.5}'.format('HelloWorld'))
补充:

使用 ,作为千位的分隔符:

python 复制代码
print('{:,}'.format(12345678) # 12,345,678

指定某个时间格式进行打印:

python 复制代码
from datetime import datetime
print('{:%Y-%m-%d %H:%M:%S}'.format (datetime(2018,8,18,18,18,18)))

这种指定某种格式进行打印的同时,都可以指定 {} 打印哪个参数:

python 复制代码
print('{0:b}'.format(58, 2)) #111010
print('{num1:b}'.format(num1 = 58, num2 = 2)) # 111010

本文参考以下资料,在此对该作者表示感谢:

链接:https://www.jianshu.com/p/30c2ae833ddd

《图解Python》学习路径:图解Python视频教程_Python学习路线-51CTO学堂

相关推荐
诚丞成2 分钟前
Kavita真正好用的不是“远程阅读”:而是把NAS目录重新组织成可扫描的Library
开发语言·网络
databook5 分钟前
让 LLM 输出不再失控:用 Pydantic 校验大模型输出
人工智能·python·llm
jingcairensheng6 分钟前
vscode 配置Python虚拟环境基于扩展和原生miniconda的区别
ide·vscode·python
Kimi-学长12 分钟前
PHP 爆出两个高危安全漏洞!CVE-2026-109618、CVE-2026-109619 修复方案与防护指南
开发语言·php
“AI国潮设计-小江”15 分钟前
《【AIGC实战】Python+SDXL批量生成“英歌舞草莓抱抱卷蛋糕”IP插牌立牌方案,锁定角色一致性,甜品插件化落地》
开发语言·人工智能·python·prompt·aigc
LMT流氓兔16 分钟前
第五单元——第7课:工具读取用户身份,而不是让模型填写身份
python·langchain
雪落漂泊17 分钟前
C++算法 滑动窗口篇(上)
开发语言·c++·算法
FlyWIHTSKY19 分钟前
Agent阶段一:基础夯实
python·ai·fastapi
估值探索者20 分钟前
【Python量化技术指标实战 04】布林带通道突破,怎么知道是真突破还是假突破?
java·开发语言·python·接口·股票数据api接口
Soneswy22 分钟前
C++基础篇——类与对象(上)
开发语言·c++