Python 学习笔记 (1)输出语句

2023-05-16

题主是大一学生,刚刚开始学习python,但是题主有一定的c语言基础,在这里以两者对比的形式做一些学习笔记。

这里准备把输出语句单独拿出来写一篇文章,因为笔者觉得python 的输出语句语法很繁多(恕我直言,就像是几个人意见不合所以创造了几套语法,显得很多余,很不“计算机”),有多种不同格式,这里做一个总结。

由于python的输出语句着实繁杂,这里可能有遗漏,望指正!

#零、c语言的输出语句

c语言的输出格式就很规范了:

printf()函数的基础使用很简单:括号内有文本内容和变量内容,变量内容使用“%”引出。

例如:

int c = 0;
printf("%d",c)

##当然这里也隐藏了很多细节:

2.“%”和s之间也可以添加表达式来规范输出格式

具体格式为%[flags][width][.prec][hiL]type

1.flag 有四个标识,分别为 +、-、(space)、0

+:在前面添加正负号

-:左对齐

(space):正数留空

0:0填充

2.width/.prec也有四个标识,为number、.number、*、.*

number:输出的总长度

.number:小数位数的长度

*使用参数填充

.*:使用参数填充小数点后的位数

3.hiL 修饰类型:hh、h、l、ll、L

类型分别为单个字节,short,long,long long,long double

相当于强制类型转化

4.type就是常见的d、f、lf、c、s等等 用于输出对应的变量,还有很多种不太常见的类型(n、i、g等等),不做拓展。

c语言的输出语句格式非常严谨,也很好理解

这里对一些格式试举几例:

*/.*

#include<stdio.h>
int main()
{
int a = 0;
printf("%*d",9,a);
return 0;
}

//        0

这里使用9填充了*,就相当于%9d

number/.number

number指代总长度(包括小数长度)

.number指代小数长

#python的输出语句

在笔者的学习中,把常见的输出语句分成了三类

##直接输出变量或者文本

a = 0
print(a)
a = [11,2,3,4,5]
print (a)

只要是个变量可以直接输出,非常方便,即使是列表也可以不使用循环进行遍历,当然针对特殊需求也会使用循环输出

a = [1,2,3,45,5]
print(a)
#输出[1,2,3,45,5]
for i in a
print(i,end = ',')
#输出1,2,3,45,5

文本则可以使用“ ”来包含

也可以混合输出

使用sep改变间隔

a = 0
b = 1
c = 2
print(a,"jj",c,"hh",c)
#0 jj 2 hh 2
print(a,"jj",c,"hh",c,sep = '')
#0jj2hh2

##使用“%”来进行文本内容和变量的混合输出

这里和c语言比较相似

a = 0
print("aaaaaaaaaa%daaaaaaa"%(a))
#aaaaaaaaaa0aaaaaaa

通过改变%后的标识符也可以改变格式

##使用“{}+format()”来进行文本内容和变量的混合输出

笔者最喜欢这种输出方式,因为使用{}可以分隔变量和文本,用的安心。

a = 0
print("aaaaaaaa{}aaaa".format(a))
#aaaaaaaa0aaaa

在大括号内可以进行各种操作来更改输出格式:

使用“:”引出操作。

这里例举几个笔者常用的操作

使用十六进制、二进制、八进制输出:{:#x}{:#b}{:#o}

对齐填充:{:[符号][格式][宽度]}

符号:使用要求的符号填充空格,不说明为空格

格式:<左对齐、>右对齐、^居中

宽度:预期输出内容和填充内容的总长

a = 'hello'
print("{:!^9}".format(a))
#!!hello!!

输出多个变量:每个变量都使用{}代替,format中用逗号分隔

a = 'hello'
b = 'world'
print("{},{}".format(a,b))
#hello,world

截断:{:.[宽度]}

"{:.5}".format("Hello world") # 截取前5个字符

# Hello

小数位数保留:{:.[位数]f}

a = 3.14159265
print("{:.2f}".format(a))
#3.14

注意,这里的位数是小数位数。

还有其他丰富的操作,可参考

Python格式化输出(format)_kaichenkai的博客-CSDN博客_python.format格式化输出(format)1.基本用法&amp;quot;hello {}&amp;quot;.format(&amp;quot;python&amp;quot;) # 引用一个参数 传字符串# 输出:hello python&amp;quot;hello {}&amp;quot;.format(1024) # 传数字# 输出:hello 1024&amp;quot;https://blog.csdn.net/m0_37714245/article/details/81750784?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164951559516780271580682%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=164951559516780271580682&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-1-81750784.142^v7^pc_search_result_cache,157^v4^control&utm_term=python%E8%BE%93%E5%87%BA%E8%AF%AD%E5%8F%A5format&spm=1018.2226.3001.4187另外如果文本中要输出{},则使用\{\}

结束符

无论何种输出方式,python默认的结束符号是“\n”,而c的是“”

python中通过end来更改结束符号

print("1",end='')
print("2",end='')
print("2",end='')
print("2",end='')
print("2",end='')
#12222

二、小结

python在笔者看来,其实可以全部使用{}+format的形式输出,虽然繁琐但是万能。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 学习笔记 (1)输出语句 的相关文章

  • turnserver (coturn + redis) 配置ICE server 临时用户密码【实践】

    背景 前端连接turn服务时一般都需要设置账号密码 xff0c 由于都是在js中配置的 xff0c 长期凭据相对临时用户安全性会差很多 xff0c 本文通过程序生成临时的账号密码 xff0c 把临时凭据设置到Redis中 xff0c tur
  • C# 端口转发

    业务需要跳转ip xff0c 又不想迁移程序 xff0c 可以用此方法进行端口转发 span class hljs keyword static span span class hljs keyword void span Main spa
  • 列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少

    列数的规则如下 1 1 2 3 5 8 13 21 34 求第30位数是多少 分析 xff1a 从第二个数开始 xff0c 每位等于前两个数相加 递归 xff1a span class hljs keyword public span sp
  • dotnet core 使用传统Cookie

    dotnet core 使用传统Cookie 先在添加Cookie中间件 app UseCookiePolicy public void Configure IApplicationBuilder app IHostingEnvironme
  • dotnet core web IApplicationBuilder 中间件学习

    dotnet core web IApplicationBuilder 中间件学习 编写一个自己的中间件的模版 public static class MyApp public static IApplicationBuilder User
  • docker gitlib 搭建

    docker gitlib 搭建 1 docker 命令构建 sudo docker run v etc localtime etc timezone rw v etc localtime etc localtime rw d p 8443
  • net core Ocelot 网关 初使用(1)

    新建 net core webapi 项目 安装 nuget 包 96 96 96 Install Package Ocelot 96 96 96 配置 添加一个Ocelot json的文件用来添加Ocelot的配置 转发 http loc
  • net core Ocelot 网关 初使用(2)- 搭配 consul 服务使用 Ocelot

    搭配 consul 服务使用 Ocelot xff0c 自动路由配置 新建webapi 项目 xff0c 安装 nuget 包 install package Ocelot install package Ocelot Provider C
  • spring boot web开发(1)构建项目

    spring boot web开发 xff08 1 xff09 构建项目 1 构建项目 去 https start spring io 下载基础项目在pom xml 添加 web 依赖 lt dependency gt lt groupId
  • SpringBoot web开发(2)session登录注册

    SpringBoot web开发 xff08 2 xff09 session登录注册 新建 LoginController java 文件使用 session 控制登录 64 Autowired HttpSession session 添加
  • SpringBoot web开发 (3) 使用 mysql-jpa 登录验证

    3 使用 mysql jpa 构造 数据库实体类型 添加maven依赖 lt dependency gt lt groupId gt org springframework boot lt groupId gt lt artifactId
  • JAVA+Netty根据二级域名实现多租户内网穿透功能【设计实践】

    目录 背景 实践 项目结构 原理分析 代码实现 cc common项目 cc server项目 cc client项目 Nginx配置 使用 启动服务端 启动客户端 背景 上一篇JAVA基于Netty实现内网穿透功能 设计实践 殷长庆的博客
  • C++:stringstream格式化字符串

    C语言通过snprintf对字符串进行格式化 格式化前需要首先对字符串的长度预估 如果长度大于了字符数组的大小 格式化字符串会被截断 C 通过stringstream对字符串进行格式化 include lt sstream gt inclu
  • Ubuntu:apt软件包管理工具

    apt是Advanced Packaging Tool 是Ubuntu的安装包管理工具 主要的几个操作为 1 安装软件包 sudo apt install 软件包名 2 卸载软件包 而保留软件的配置文件 sudo apt remove 软件
  • CMake:message输出消息

    可以在执行cmkae的时候使用message输出信息 xff1a message lt mode gt 34 message text 34 其中mode有如下几个选项 xff08 优先级由低到高 xff09 xff1a TRACE xff
  • C++(11):通过underlying_type获取/输出枚举类的值

    C 11 枚举类 风静如云的博客 CSDN博客 c 11 枚举类 介绍了枚举类使用的好处 不过如果直接输出枚举类的值是不行的 include lt iostream gt using namespace std int main enum
  • gitlab-ce安装

    GitLab是一个利用 Ruby on Rails 开发的开源应用程序 xff0c 实现一个自托管的Git项目仓库 xff0c 可通过Web界面进行访问公开的或者私人项目 GitLab拥有与Github类似的功能 xff0c 能够浏览源代码
  • WSL2安装到其它目录下

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 WSL2是什么 xff1f 二 下载Ubuntu20 041 打开Mocrosoft Store2 导出发行版 总结 前
  • 解决Ubuntu20.04安装CUDA-11.2报256错误的问题

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 报错的原因是什么 xff1f 二 安装cuda 11 2三 安装nvidia driver 455四 再装cuda 11
  • ARM整形算力计算

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 RK3399规格 xff1f 二 开始计算1 参考2 计算 总结 前言 之前做人工智能使用RK3399的CPU去推理 x

随机推荐

  • WSL2使用USB设备

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 WSL2是什么 xff1f 二 编译内核1 查看自己的内核2 准备工作3 下载适合自己的内核版本4 开始编译4 使用内核
  • cron的正确食用方法

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 cron是什么 xff1f 二 使用步骤1 字段含义2 加强学习3 crontab命令4 工作原理5 其它用法6 补充内
  • windows 下 mongodb 导入导出collection(json、csv)

    1 下载mongodb xff0c 并安装 https www mongodb com dr fastdl mongodb org win32 mongodb win32 x86 64 2008plus ssl 3 4 0 signed m
  • 【WSL2启用systemd支持(一个配置即可)】

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 systemd是什么 xff1f 二 备份数据1 归档2 备份分支 三 准备工作1 内核升级 四 修改配置总结 前言 很
  • WSL2+Systemd支持度测试

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 systemd是什么 xff1f 二 开始测试1 Docker2 rsyslog3 systemd timesyncd4
  • 部分解决Ubuntu安装X11VNC需要自动登录的问题

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 GDM是什么 xff1f 二 VNC绑定GDM账户1 vnc绑定gdm登录 总结 前言 Ubuntu18 04 Ubun
  • Linux watchdog配置

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 watchdog是什么 xff1f 1 硬件看门狗2 软件看门狗 二 使用步骤1 硬件看门狗2 软件看门狗 总结 前言
  • Ubuntu内核打开硬件watchdog

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 watchdog是什么 xff1f 1 硬件看门狗2 软件件看门狗 二 编译内核1 添加配置2 开始编译3 安装内核4
  • explicit specialization of non-template

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 C 43 43 模板是什么 xff1f 二 错误原因1 主模板2 解决方法 总结 前言 相信很多人在使用C 43 43
  • HC-SR04超声波传感器使用

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 关于HC SR04二 使用步骤1 确保驱动已经安装2 安装GPIO工具3 安装GPIO的Python支持4 Python
  • 红外传感器使用

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 红外传感器 xff1f 二 使用步骤1 确保驱动已经安装2 安装GPIO工具3 安装GPIO的Python支持4 Pyt
  • Ubuntu20.04安装WineHQ-8.0

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 WineHQ是什么 xff1f 二 准备工作1 准备工作2 增加源密钥3 增加源地址 三 开始安装1 更新源缓存2 安装
  • Clion安装Platformio支持

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 系统配置二 什么是platformio三 安装配置1 安装Clion2 安装platformio插件3 安装platfo
  • ExecutorService 并发性能测试

    公共线程池 private ExecutorService executorService 61 Executors newFixedThreadPool 3 测试不使用线程池 xff0c 响应时间 public void test1 th
  • C++引用合并(引用的引用)

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 引用合并总结 前言 最近做一个项目 xff0c 遇到了C 43 43 的引用合并 xff0c 到底是怎么回事呢 xff1
  • C++ 普通旧数据解读(POD)

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 什么是普通旧数据 xff1f 二 使用步骤三 其他方法总结 前言 在开发C 43 43 的时候 xff0c 使用对象是绕
  • C++枚举解读(enum)

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 枚举是什么 xff1f 二 使用步骤1 作用域2 隐式类型转换3 显式指定枚举值类型4 指定枚举值的值4 整形显式转换成
  • RK3399实际编码能力

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 RK3399简单介绍二 开始测试1 测试结果 总结 前言 最近在做一个项目 xff0c 需要用到RK3399的硬解码和硬
  • workbox学习笔记

    workbox学习笔记 一 PWA介绍 1 1 学习workbox之前先了解一下PWA xff08 如果了解请跳过 xff09 PWA xff08 全称 xff1a Progressive Web App xff09 也就是说这是个渐进式的
  • Python 学习笔记 (1)输出语句

    题主是大一学生 xff0c 刚刚开始学习python xff0c 但是题主有一定的c语言基础 xff0c 在这里以两者对比的形式做一些学习笔记 这里准备把输出语句单独拿出来写一篇文章 xff0c 因为笔者觉得python 的输出语句语法很繁