while循环
基础循环
while 条件:
循环体
例如:
while True:
print("Hello World")
# ctrl + C 终止程序
运行上面的代码会陷入死循环,使用while时一定不能陷入死循环,需要加条件,如下代码
flag = True
while flag:
print("循环体代码")
flag = False #把flag改为假
使用while计数输出,输出0-99
count = 0
while count < 100:
print("count")
count += 1 #每次循环进行自增
break关键字
用于中断循环,通常再满足某种条件时使用,如下,我希望在等于10时终止程序
num = 1
while num < 6:
print(num)
if num == 3:
break
print("结束") #当num=3时,break,并且下面的代码不执行
continue关键字
用于结束本次循环,仅仅跳出本次,例如,输出1-10,但是不输出3
num = 1
while num < 11:
if num == 3:
continue #当代码执行到这里,结束本次循环,后面的代码不执行,表现为不输出3
print(num)
while else使用
# 如下代码执行结果为456,是因为满足了while的条件,执行了内部的代码,遇到break终止了程序,所以else内代码不执行
i = 11
while i < 15:
print("456")
i += 1
break
else:
print("123")
# 如下代码执行结果为123,因为while条件不满足,内部代码不执行,直接执行else内部的代码
i = 11
while i < 10:
print("456")
i += 1
break
else:
print("123")
# 如下代码的结果为四遍456,一遍123,当执行完while内部代码之后,还会执行else 内部的代码
i = 11
while i < 15:
print("456")
i += 1
else:
print("123")
格式化输出
现在需要录入身边好友的信息,格式如下
------------ info of user ---------- Name : Age : job : Hobbie: ------------- end ----------------
用print,过于死板,代码太长 name = input('请输入姓名:') age = input('请输入年龄:') job = input('请输入职业:') hobby = input('请输入爱好:') a = '------------ info of user ----------' b = 'Name:' c = 'Age:' d = 'Job:' e = 'Hobby:' f = '------------- end ----------------' print(a) ... print(f) # 运行结果 ------------ info of user ---------- Name:123 Age:456 Job:456 Hobby:789 ------------- end ----------------
使用字符串 name = input('请输入姓名:') age = input('请输入年龄:') job = input('请输入职业:') hobby = input('请输入爱好:') msg = ''' ------------ info of Alex Li ---------- Name : %s Age : %s job : %s Hobbie: %s ------------- end ---------------- ''' print(msg%(name,age,job,hobby))
%是一个占位,s是用来声明类型的,s是字符串类型
还有数字类型%d或%i,用来接收数字,
age = int(input("请输入你的年龄")) # 需要用int把输入的字符串变成整型 print("你的年龄是%d" % age)
%% 转义
number = input('>>>') s= '目前学习进度:%s%%'%num #当出现%,解释器认为是占位,但是后面没有声明类型,出现错误,必须用%转义,这样解释器就认为这是一个% print(s)
常用运算符
-
算数运算
-
比较运算
-
逻辑运算
-
赋值运算
算数运算符
-
+
-
-
-
*
-
/
-
** 幂
-
% 取模
-
// 取整除,向下取整
比较运算
== != >= <= > <
赋值运算
= | 简单的赋值运算符 | a= b+c |
---|---|---|
+= | 加法赋值运算符 | a = a+c 等效于 a+=c |
-= | 减法赋值运算符 | a = a-c 等效于 a-=c |
/= | 除法赋值运算符 | a = a/c 等效于 a/=c |
*= | 乘法赋值运算符 | a = a*c 等效于 a*=c |
**= | 幂赋值运算符 | a = a**c 等效于 a**=c |
//= | 取整除赋值运算符 | a = a//c 等效于 a//=c |
%= | 取模赋值运算符 | a = a%c 等效于 a%=c |
逻辑运算
运算符 | 描述 |
---|---|
and | 两边同为True,返回true |
or | 两边只要有一个true,返回true |
not | 取反 |
# True and False # 数字非零的都是真 # and 的运算,都为真才是真,有一个是假就是假 # and 的运算,都为真的的时候选择and后边的内容 # and 的运算,都为假的的时候选择and前边的内容 # or 的运算,只要有一个真就是真 # or 的运算,都为真的的时候选择or前边的内容 # or 的运算,都为假的的时候选择or后边的内容
成员运算
in,not in
判断元素是否在原字符串中,例如
print('x' in 'next')
print('a' in 'love')
初始编码
ASCll
只支持英文,不支持中文,占一个字节
GBK(国标码)
兼容ASCLL码
占两个字节
Unicode(万国码农)
为了兼容世界的所有语言,但是太过浪费资源
UTF-8(unicode的扩展集)
UTF-8为了节省资源,采用变长编码
英文1个字节
欧洲2个字节
单位转化
8bit = 1byte
1024byte = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
1024TB = 1EB
1024EB = 1ZB
1024ZB = 1YB
1024YB = 1NB
1024NB = 1DB
常⽤到TB就够了