Python学习之格式化简述
2.2 格式化输出
2.2.1 占位符
%s就是代表字符串占位符;%d是数字占位符,%i 也可以表示数字,如果把变量后⾯的换成%d,就代表必须只能输⼊数字这时对应的数据必须是int类型. 否则程序会报错,因此有时我们需要进行类型转换。
int(str) # 字符串串转换成int
str(int) # int转换成字符串串
注意:如果想要输出%而不是把它当作占位符输出,需要使用%%格式表示%转译成字符串。
2.2.2 类型一:%占位
注意:
1.占位符的数量与填充的数量必须要一直,不一致时程序报错。
2.填充时,内容与占位符顺序必须一直
name = input('请输入姓名')
age = input('请输入年龄')
hobby = input('爱好是啥')
gsh = '我是%s,年龄%s,爱好%s' %('name','age','hobby')
print(gsh)
name = input("name :")
age = input("age:")
job = input("job:")
inf = '''
--------------inf of %s-------------
name : %s #显示名字
age : %d #显示年龄
job : %s #显示职业
------------------------------------
''' %(name,name,int(age),job) #这里的% 就是把前边的变量和括号里的变量连接起来
print(inf)
注意:在对age进行类型转换时,需使用int(age),要在使用时进行转换或者用下边的方式进行重新转换赋值
age = input("age:")
age = int(age)
2.2.3 类型二 f{}占位
f"alex{ },{'aa'}",3.6版本及以上才能使用,aa如果没有引号表示变量名,对其应有赋值运算。
msg = f'''
name:{input('name:')}
age:{input('age:')}
sex:{input('sex:')}
job:{input('job:')}
'''
print(msg)
注意''," ",''' ''',""" """之间的嵌套区别使用,例:
f"name:{},{"name"}" #两个""的连续使用,致使name无效,程序报错
2.3.1 算数运算
a = 10 b = 21
运算符 | 描述 | 示例 |
---|---|---|
+ | 加法运算 | a + b = 31 |
- | 减法运算 | a - b = -11 |
* | 乘法运算 | a * b = 210 |
/ | 除法运算 | b / a =2.1 |
% | 模运算,返回余数 | b / a = 1 |
** | 幂运算 | a**b ,10的21次方 |
// | 整除取余 | b // a = 2 |
2.3.2 比较运算
a = 10 b = 20
运算符 | 描述 | 示例 |
---|---|---|
== | 相等为真 | a == b 为Flase |
!= | 不相等为真 | a != b为True |
> | 左边大于右边为真 | a > b 为Flase |
< | 右边大于左边为真 | a < b 为True |
>= | 左边大于等于右边为真 | a>=b 值为Flase |
<= | 右边大于等于左边为真 | a <= b值为True |
2.3.3 赋值运算
a = 10 b = 20
运算符 | 描述 | 示例 |
---|---|---|
= | 简单的赋值运算 | c = a + b = 30 |
+= | j加法赋值运算 | c += a等价于c = c + a |
-= | 减法赋值运算 | c -= a 等价于 c = c - a |
*= | 乘法赋值运算 | c *= a 等价于 c = c * a |
/= | 除法赋值运算 | c /= a 等价于 c = c / a |
%= | 取模赋值运算 | c %= a 等价于 c = c % a |
**= | 幂赋值运算 | c **= a 等价于 c = c ** a |
//= | 整除赋值运算 | c //= a 等价于 c = c // a |
2.3.4 逻辑运算符
假设变量a的值为True,变量b的值为False
运算符 | 描述 | 示例 |
---|---|---|
and | 如果两个操作数都为真,则条件成立 | (a and b)的结果为False |
or | 如果两个操作数中的任何一个非零,则条件成为真 | (a or b)的结果为True |
not | 用于反转操作数的逻辑状态 | not(a and b) 的结果为True |
针对逻辑运算的进⼀步研究:**
1.在没有()的情况下not 优先级高于 and,and优先级高于or,即优先级关系为( )>not>and>or,同一优先级从左往右计算。运算符要作为整体进行比较
( ) > not > and > or
2.x or y , x为真,值就是x,x为假(x是0),值是y
x and y, x为真,值是y,x为假,值是x
2.3.5 编码问题
python2解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ASSIC),⽽python3对内容进行编码的默认为utf-8。
最早的计算机编码是ASCII。 有英文+数字+特殊字符 8bit => 1byte 没有中文, 后面的编码必须兼容ASCII。
GBK 把中国的文字进行编码。对ASCII扩充。 16bit => 2byte 主要包含了中文, 日文, 韩文, 英文(兼容ASCII)
UNICODE 32bit 兼容各个国家的编码-万国码- 浪费空间 32bit => 4byte
UTF-8 可变长度的UNICODE,本质是UNICODE。
英文在UTF-8——占用1个字节 8bit
欧洲文字——占用2个字节 16bit
中文——占用3个字节 24bit
UTF-16,最少用2个字节
8bit = 1byte
1024byte = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
1024PB = 1EB
1024EB = 1ZB
1024ZB = 1YB
1024YB = 1NB
1024NB = 1DB
2.3.6 成员运算符in、not in
1. while
while 条件:
循环体
else:
循环在正常情况跳出之后会执⾏该命令
#例子
index = 1
while index < 11:
if index == 8:
# break
pass
else:
print(index)
index = index+1
else:print("你好")
注意:
如果循环是通过break退出的. 那么while后⾯面的else将不会被执行, 只有在while条件判断是假的时候才会执行这个else。
pass: 不表⽰任何内容,为了代码的完整性,占位而已,目的是不妨碍下边命令继续运行
2. in 、not in
可以判断某一小部分字符串是否出现在其他字符串中
content = input("请输入你的评论")
if "hello" in content or 'hello world' in content:
print('您输入的字符不在该范围内')
else:
print("在在在")
2.3.7 身份运算
is --》是
is not --》不是
Python学习之格式化简述的更多相关文章
- python学习:格式化输出
格式化输出 代码如下: name = input("Name:") age = input("Age:") job = input("Job:&quo ...
- Python学习 :格式化输出
方式一:使用占位符 % 常用占位符:% s (s = string 字符串) % d (d = digit 整数(十进制)) % f ( f = float 浮点数) na ...
- python学习6—数据类型之集合与字符串格式化
python学习6—数据类型之集合与字符串格式化 1. 使用id()可以查看一个变量的内存地址: name = 'alex' id(name) 2. 进制转换 十进制转换为二进制等: a = 10 # ...
- Python学习day05 - Python基础(3) 格式化输出和基本运算符
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习之路——基础篇(1)字符串格式化
字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存. 百分号方式 ...
- Python学习笔记2-Python神奇的语法和格式化输出
先来看一个例子: class Fish: hungry=True def eat(self,food): if food is not None: self.hungry=False class Us ...
- Python学习日记(十)—— 杂货铺(全局变量补充、Python参数传递、字符串格式化、迭代器、生成器)
全局变量补充 python自己添加了些全局变量 print(vars()) """结果: {'__name__': '__main__', '__doc__': None ...
- Python学习记录day5
title: Python学习记录day5 tags: python author: Chinge Yang date: 2016-11-26 --- 1.多层装饰器 多层装饰器的原理是,装饰器装饰函 ...
- python学习笔记系列----(八)python常用的标准库
终于学到了python手册的最后一部分:常用标准库.这部分内容主要就是介绍了一些基础的常用的基础库,可以大概了解下,在以后真正使用的时候也能想起来再拿出来用. 8.1 操作系统接口模块:OS OS模块 ...
随机推荐
- 数据管理必看!Kendo UI for jQuery过滤器状态保持
Kendo UI for jQuery最新试用版下载 Kendo UI目前最新提供Kendo UI for jQuery.Kendo UI for Angular.Kendo UI Support f ...
- Python之PyLint自动检查代码
PyLint的下载地址:https://pypi.python.org/pypi/pylint PyLint的官网:http://www.pylint.org/ 从源码发行版安装,解压文件包并且运行 ...
- java8 Date Localdatetime instant 相互转化(转) 及当天的最大/最小时间
Java 8中 java.util.Date 类新增了两个方法,分别是from(Instant instant)和toInstant()方法 // Obtains an instance of Dat ...
- 【agc005d】~K Perm Counting
题目大意 求有多少中1~n的排列,使得\(abs(第i个位置的值-i)!=k\) 解题思路 考虑容斥,\(ans=\sum_{i=0}^{n}(-1)^ig[i](n-i)!(g[i]表示至少有i个位 ...
- [PWN]fsb with stack frame
0x00: 格式化字符串漏洞出现的时间很早了,偶然在前一段时间学到了一个其他的利用姿势,通过栈桢结构去利用格式化字符串漏洞. 原文链接:http://phrack.org/issues/59/7.ht ...
- Windows下如何禁止优盘自动播放、自动运行
造冰箱的大熊猫@cnblogs 2019/1/28 为了防范层出不穷的病毒和木马,如何禁止插入优盘后Windows自动播放优盘或运行优盘程序? 运行环境:Windows 7 1)点击Windows开 ...
- 微信小程序搭建mpvue+vant+flyio
导语 上一篇文章微信小程序搭建mpvue+vant已经介绍了如何搭起mpvue项目及引入vant,本篇文章继续在它的基础上,引入flyio,并做一些封装,目的是为了在小程序发起请求. 这时读者会有些疑 ...
- Jmeter(十)断言
断言是我们在做自动化测试中常用的一个功能,用于检查测试中响应数据是否符合预期. 使用断言的目的:在request的返回层面增加一层判断机制:因为request成功了,并不代表结果一定正确. 下面我们就 ...
- python3 使用flask连接数据库出现“ModuleNotFoundError: No module named 'MySQLdb'”
本文链接:https://blog.csdn.net/Granery/article/details/89787348 在使用python3连接MySQL的时候出现了 ‘ModuleNotFoundE ...
- JavaWeb-RESTful(一)_RESTful初认识
系列博文 JavaWeb-RESTful(一)_RESTful初认识 传送门 JavaWeb-RESTful(二)_使用SpringMVC开发RESTful_上 传送门 JavaWeb-RESTful ...