while 循环,运算符,字符串的格式化
1.while 关键字 (死循环)
while 条件:
循环体
条件:只要条件是 Ture就可以循环.
while 空格 条件 冒号
缩进 循环体
while else
while 空格 条件 冒号
缩进 循环体
else 冒号
缩进 结果
条件都会转化为布尔值,只有 Ture 或者 false 其中包含如果是数字的话,除了 0 是 false 其他都是 Ture.
只要是字符串,除了啥也不填""是 false 其他都是 Ture.
具体程序
while True:
print("我")
print("是")
print("一")
print("颗")
print("小")
print("小")
print("的")
print("石")
print("头")
- 数字是"1" ,可以执行
while 1:
print("我")
print("是")
print("一")
print("颗")
print("小")
print("小")
print("的")
print("石")
print("头")
- 数字是 0 ,不可以执行
while 0:
print("我")
print("是")
print("一")
print("颗")
print("小")
print("小")
print("的")
print("石")
print("头")
# 程序不执行
- 随便的字符串,可以执行,就算是空格也能够执行
s = "A"
while s:
print("我")
print("是")
print("一")
print("颗")
print("小")
print("小")
print("的")
print("石")
print("头")
- 如果什么都不写,程序不执行
s = ""
while s:
print("我")
print("是")
print("一")
print("颗")
print("小")
print("小")
print("的")
print("石")
print("头")
# 程序不执行
- while 中几种常见的形式
第一种:下面的代码中,在输出 1 之后,while 循环一直被执行,进入死循环,后面的 print(2),一直不执行
print(1)
while 1:
print("我")
print("是")
print("一")
print("颗")
print("小")
print("小")
print("的")
print("石")
print("头")
print(2)
1
我
是
一
颗
小
小
的
石
头
我
是
第二种: 要是想要输出 2 只能是条件为假的时候
falg = "suibian"
while falg:
print(1)
print(2)
当条件为真时,就执行 1111111 一直下去
若是下面的 false 那就输出 2
falg = ""
while falg:
print(1)
print(2)
练习
输出 1 2 3 4 5的正确排序
count = 1
while count <= 5:
print(count)
count = count + 1
将上面题目,用倒叙的手法
count = 5
while count >= 1:
print(count)
count = count - 1
2.break , continue
定义: 终止当前循环,break 下面的 代码不会进行执行(1 只是被当成 Ture的条件)
while 1:
print(123)
print(456)
break
print(789)
print(111)
#123
456
111
continue: 直接伪装成循环体中的最后一行代码 continue下面的代码不会执行(跳出当前循环,继续下次循环,比如跑步,突然 continue 出现在半路跑道,那么就要从头开始继续跑半截 再半截 以此循环)
while 1:
print(123)
print(456)
continue
print(789)
#
123
456
123
456
123
456
一直循环
**break:打破当前循环,终止当前循环. **
continue 跳出当前准备循环,继续下次循环
相同之处 : 他们以下的代码都不执行
字符串的格式化
我们在遇到制作名片的问题时,一般的过程如下
\n 换行
a = "--------ofo---------"
b = "name"
c = "age"
d = "job"
e = "--------end--------"
name = input("name:")
age = input("age:")
job = input("job:")
print(a + "\n" + b + name + "\n" + c + age + "\n" + d + job + "\n" + e + "\n" )
但是这样的过程过于繁琐,于是有了下面的字符串格式化
格式化的优点:能够对多个子字符串自由排列 组合 转换格式
s = '''--------ofo-------
name:%s
age:%s
job:%s
-------end------'''
name = input("name")
age = input("age")
job = input("job")
print(s%(name,age,job))
#
namezh
ages
jobx
--------ofo-------
name:zh
age:s
job:x
-------end------
这里对于我来说有些难理解
# num = input("学习进度:")
# s11 = "黑哥的学习进度:%s %%"
# print(s11%('234'))
s = f"今天下雨了{input('>>>')}"
print(s)
s11 = "大哥黑的学习进度为:%s"
print(s11%("不错"))
s = f"{1}{2}{3}"
print(s)
# %s 是占的字符串类型的位置
# %d 是占的数字类型的位置
# %% 转换成普通的%号
# 按照位置顺序传递,占位和补位必须要一一对应
while else
while True:
print(E)
else:
print(F)
while True:
print(A)
break
print(B)
运算符
算数运算符
/ (python2 中获取的值是整数 , python3 中获取的是浮点数)
// 整除—地板除
print(5//2)
% 模 取余
**幂(次方)
比较运算符
<
>
== 等于
!= 不等于
>= 大于等于
<= 小于等于
赋值运算符
= 赋值
+= 自加
a = 10
a += 1 (相当于 a = a + 1)
print(a)
-= 自减
*= 自乘
逻辑运算符
and (与/和) or (或) not (非)
and : 都为真的时候取 and 后面的值
都为假的时候取 and 前面的值
一真一假取假
print(3 and 4)
print(0 and False)
print(0 and 4)
print(3 and 9 and 5 and 0 and False)
print(5 and False and 9 and 0)
print(1 and 2 and 5 and 9 and 6)
Or : 都为真的时候取 or 前面的值
都为假的时候取 or 后面的值
一真一假取真
print(1 or 0)
print(1 or 2)
print(0 or False)
print(1 or 9 or 4 or 0 or 9)
#1
**级别: () > not > and > or **
从左往右执行 : (如果你愿意一层一层的剥开我的心~~~)
print(9 and 1 or not False and 8 or 0 and 7 and False)
# 1
成员运算符
in 存在
not in 不存在
s = "alexdsb"
if "sb" not in s:
print(True)
else:
print(False)
总结
运算顺序:() > not > and > or 从左向右执行
算数运算符 : + - * / // ** %
比较运算符: > < >= <= == !=
赋值运算符: = += -= *= /= //= **= %=
逻辑运算符: and or not () > not > and > or
成员运算符: in not in
编码初始
理解
今 0101
天 0110
晚 0010
上 0001
去 1001
便 1000
利 0100
店 1111
00000101 00000110 0010000110011001
linux -- utf-8
mac -- utf-8
windows -- gbk
四种(重要)
ascii (老美)不支持中文
gbk (国标) 英文 8位 中文16位
unicode (万国码)英文16 位 中文 32位
utf-8 (可变长的编码) 英文8位 欧洲文 16位 亚洲24位
单位转换
1字节 = 8位
1Bytes = 8bit ***
1024byte = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
1024PB = 1EB
1024EB = 1ZB
1024ZB = 1YB
1024YB = 1NB
1024NB = 1DB
while 循环,运算符,字符串的格式化的更多相关文章
- while 循环,运算符,字符串的格式化练习
1.判断下列逻辑语句的结果,一定要自己先分析 1)1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 Ture ...
- 总结day2 ---- while循环的简单使用, 格式化输出.运算符.以及编码的应用
内容提要 一 : while 循环 while 的基本语句操作 如何终止循环 二 :格式化输出 三 :运算符号 四 :编码初识别 一 : while 循环 1 >>>>whi ...
- 字符串的格式化、运算符和math函数(python中)
一.字符串的格式化 1.字符串格式化输出 print('%s的年龄是%d' % ('小哥哥',20)) # 将每个值放在⼀个圆括号内,逗号隔开 '{0}的年龄是{1}'.format('⼩小哥哥',2 ...
- yield生成器及字符串的格式化
一.生成器 def ran(): print('Hello world') yield 'F1' print('Hey there!') yield 'F2' print('goodbye') yie ...
- Python基础->for循环、字符串以及元组
python流程控制>for循环.字符串以及元组 学习有关序列的思想.序列:一组有顺序的东西.所有的序列都是由元素组成的,序列中的元素位置是从0开始编号的,最后一个元素的位置是它长度减一. fo ...
- 010.Python字符串的格式化
字符串的格式化 顺序传参 索引传参 关键字传参 容器类型传参(列表和元组) {}相当于占位符 1 顺序传参 strvar = "他{}牺牲自己,{}出卖组织" res = strv ...
- PHP json字符串,格式化缩进显示
PHP json字符串,格式化显示 /** * 格式化 */ class JsonFormatHelper { /** * json字符串缩进显示 * @param unknown $json * @ ...
- C Primer Plus_第四章_字符串和格式化输入输出_编程练习
Practice 1.输入名字和姓氏,以"名字,姓氏"的格式输出打印. #include int main(void) { char name[20]; char family[2 ...
- 使用指定格式的字符串变量格式化日期字符串,DateAndTime取时间间隔
private void btn_GetTime_Click(object sender, EventArgs e) { lab_time.Text = DateTime.Now.ToString(& ...
随机推荐
- LoadLibrary方法加载运行DLL库
最近和另一家公司对接,要求用对方提供的测试程序测试我们做的DLL. 接到对方的测试程序,发现和我们以前调用DLL的方式不太一样.但我稍微看了一会代码也看懂其意思了,一天搞定了. 但其中也遇到些小困惑, ...
- Sailfish OS 2.1.0 发布,带来重大的架构变化
Sailfish OS 2.1.0 Iijoki 发布了. Iijoki通过引入Qt 5.6 UI框架.BlueZ 5 蓝牙堆栈和 64 位架构的基本实现,为Sailfish操作系统带来了重大的架构变 ...
- 10秒完成Linux系统pip在线安装
对于Python开发攻城狮及系统运维攻城狮来说,pip的安装那是必不可少的一个过程.鉴于网上很多安装过程写得过于复杂,本人根据pip官方手册总结了以下最为快捷的安装方式,只需要2步操作. curl h ...
- C# 对字段忽略模型校验
1.在if (!ModelState.IsValid)之前给字段赋值,然后TryUpdateModel()2.使用如下方法 public ActionResult Create([Bind(Exclu ...
- [2017.02.13] linux平台下统计C++项目文件个数和代码行数
#输出排序后文件名 file='find . -name "*.[ch]" | sort' #统计文件个数 filecnt='find . -name "*.[ch]&q ...
- Postman支持的几种数据类型请求方式
一.postman作为web应用开发工具,可以用于模拟多种请求方式,但是支持的传参类型又不尽相同.根据面板上的几种数据打包方式来选择合适的请求数据类型. form-data 就是http请求中的mul ...
- 点菜网---Java开源生鲜电商平台-系统架构图(源码可下载)
点菜网---Java开源生鲜电商平台-系统架构图(源码可下载) 1.点菜网-生鲜电商平台的价值与定位. 生鲜电商平台是一家致力于打造全国餐饮行业智能化.便利化.平台化与透明化服务的创新型移动互联网平台 ...
- 【静态NAT】 为什么子网可以ping父网,但是父网ping不通子网?
为什么子网可以ping父网,但是父网ping不通子网? 这就好比在公网中ping一个192.168.0.x的子网,roter无法找到这个子网的地址,所以会把package丢掉. 如何解决呢,可以在路由 ...
- C# 连接数据库等
SqlConnection连接池:可以通过连接字符串配置连接池.对象池技术:HttpApplication :Asp.Net生产者 消费者. 线程.应用程序跟数据连接非常耗时,而且连接使用非常频繁,使 ...
- Python连载21-collections模块
一.collections模块 1.函数namedtuple (1)作用:tuple类型,是一个可命名的tuple (2)格式:collections(列表名称,列表) (3)返回值:一个含有列表的 ...