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. 数字是"1" ,可以执行
while 1:
print("我")
print("是")
print("一")
print("颗")
print("小")
print("小")
print("的")
print("石")
print("头")
  1. 数字是 0 ,不可以执行
while 0:
print("我")
print("是")
print("一")
print("颗")
print("小")
print("小")
print("的")
print("石")
print("头")
# 程序不执行
  1. 随便的字符串,可以执行,就算是空格也能够执行
s = "A"
while s:
print("我")
print("是")
print("一")
print("颗")
print("小")
print("小")
print("的")
print("石")
print("头")
  1. 如果什么都不写,程序不执行
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 循环,运算符,字符串的格式化的更多相关文章

  1. while 循环,运算符,字符串的格式化练习

    1.判断下列逻辑语句的结果,一定要自己先分析 1)1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 Ture ...

  2. 总结day2 ---- while循环的简单使用, 格式化输出.运算符.以及编码的应用

    内容提要 一 : while 循环 while 的基本语句操作 如何终止循环 二 :格式化输出 三 :运算符号 四 :编码初识别 一 : while 循环 1  >>>>whi ...

  3. 字符串的格式化、运算符和math函数(python中)

    一.字符串的格式化 1.字符串格式化输出 print('%s的年龄是%d' % ('小哥哥',20)) # 将每个值放在⼀个圆括号内,逗号隔开 '{0}的年龄是{1}'.format('⼩小哥哥',2 ...

  4. yield生成器及字符串的格式化

    一.生成器 def ran(): print('Hello world') yield 'F1' print('Hey there!') yield 'F2' print('goodbye') yie ...

  5. Python基础->for循环、字符串以及元组

    python流程控制>for循环.字符串以及元组 学习有关序列的思想.序列:一组有顺序的东西.所有的序列都是由元素组成的,序列中的元素位置是从0开始编号的,最后一个元素的位置是它长度减一. fo ...

  6. 010.Python字符串的格式化

    字符串的格式化 顺序传参 索引传参 关键字传参 容器类型传参(列表和元组) {}相当于占位符 1 顺序传参 strvar = "他{}牺牲自己,{}出卖组织" res = strv ...

  7. PHP json字符串,格式化缩进显示

    PHP json字符串,格式化显示 /** * 格式化 */ class JsonFormatHelper { /** * json字符串缩进显示 * @param unknown $json * @ ...

  8. C Primer Plus_第四章_字符串和格式化输入输出_编程练习

    Practice 1.输入名字和姓氏,以"名字,姓氏"的格式输出打印. #include int main(void) { char name[20]; char family[2 ...

  9. 使用指定格式的字符串变量格式化日期字符串,DateAndTime取时间间隔

    private void btn_GetTime_Click(object sender, EventArgs e) { lab_time.Text = DateTime.Now.ToString(& ...

随机推荐

  1. 轻量级 Material Design 前端框架 MDUI (纯html,css,与css框架跟react vue不冲突)

    MDUI 是一个轻量级的 Material Design 前端框架,对照着 Material Design 文档进行开发,争取 1:1 实现 Material Design 中的组件. 多主题支持 M ...

  2. GO :互联网时代的 C 语言!

    摘要: 每周为您推送最有价值的开源技术内参! 技术干货 标签:独家译文 1.Go 很好,为什么我们不使用它? 在这篇文章中,我将分享一下为什么我认为它很棒,使用它的一些缺点,以及为什么它还不是我们 Z ...

  3. baiduMap试手《办理进京证和市区警察查询进京证的地址浏览》

    没用过baidu的map api其实挺简单,申请一个key,然后根据坐标在地图上生成对象,看了官方的dome多少知道有些什么功能了,没什么可说的直接贴效果. <!DOCTYPE html> ...

  4. JavaScript-DOM续

    一.路由的跳转 <body> <a href="#/course">课程</a> <a href="#/main"&g ...

  5. 函数式编程里的Materialization应该翻译成什么?

    Materialization是函数式编程里的一个专业术语, 用于特指函数式编程中查询被实际执行并生成结果的这一过程. 首先, 搜了一下中文资料, 暂时没有对该词的中文翻译,  CSDN\博客园\阿里 ...

  6. HTML连载8-video标签

    ​一.video标签 1.作用:播放视频 2.格式:<video src="视频地址“></video> 3.可添加的属性: (1)autoplay="au ...

  7. 利用Settings.bundle切换网络环境

    目的:一次性打包,测试可以去iPhone设置,找到APP,点击后然后可以自主切换网络环境(测试.预生产.正式).关闭APP重新打开生效. 撸起袖子加油干…… 1.生成并设置Setting.bundle ...

  8. spring 5.x 系列第22篇 —— spring 定时任务 (代码配置方式)

    源码Gitub地址:https://github.com/heibaiying/spring-samples-for-all 一.说明 1.1 项目结构说明 关于任务的调度配置定义在ServletCo ...

  9. 多线程与高并发(三)synchronized关键字

    上一篇中学习了线程安全相关的知识,知道了线程安全问题主要来自JMM的设计,集中在主内存和线程的工作内存而导致的内存可见性问题,及重排序导致的问题.上一篇也提到共享数据会出现可见性和竞争现象,如果多线程 ...

  10. 计算广告之CTR预测--PNN模型

    论文为:Product-based Neural Networks for User Response Prediction 1.原理 给大家举例一个直观的场景:比如现在有一个凤凰网站,网站上面有一个 ...