python格式化输出,循环与编码
-
pycharm的安装以及使用
- 辅助开发软件,代码逐行调试,设置高端,不会提示,在书写代码时不提示debug模式,最好用的还是pycharm
-
格式化输出
-
当你遇到这样的需求:字符串中想让某些位置变成动态可传入的,首先想到格式化输出.
name = input('请输入名字:')
age = input('请输入年龄:')
job= input('请输入工作:')
hobby = input('请输入爱好:')
msg = '''------------ info of %s ------------
Name : %s
Age : %s
job : %s
Hobby : %s
------------ end -----------------'''%(name,name,age,job,hobby)
print(msg)在格式化输出中,如果只想表示一个"%",并不是一个占位符,只需要再加一个%
msg = '我叫%s,今年%s,学习进度%d%%'%('taibai','18',1)
print(msg)
-
-
while循环
-
无限循环(可以终止循环)
- 改变条件(标志位,设立循环次数)
- break(跳出整体循环)
- continue(跳出内层循环,跳出本次循环继续下次循环)
count = 0
flag = True
while flag:
count += 1
print(count)
if count == 100:
flag = False
-
有限循环(设置条件)
count = 0
while count<100:
count += 1
print(count) -
while,else
- 只要while循环是正常的(不是被break打断的),else语句就能正常打印
while循环如果被break打断,则不执行else语句.
count = 0
while count < 5:
count += 1
if count == 3:
break
print(count)
else:
print(666666)
- 只要while循环是正常的(不是被break打断的),else语句就能正常打印
运算符
- 算术运算符(+,-)
- 比较运算符(>,<,=)
- 赋值运算符(=)
- 逻辑运算符(not,and,or)
- 在没有()的情况下,运算顺序not>and>or,同一优先级从左至右依次计算
- 情况1:两边都是比较运算
print(2>1and 3<4 or 4>5 and 2<1) - 情况2:两边都是整数
x or y,x为真,值为x,x为假,值为y
print(1 or 2)
print(3 or 2)
print(-1 or 2)
print(0 or 1)
思考题:
print(1 > 2 and 3 or 6)
结果为:6
(False or 1) 输出1
(1 or False) 输出1
(True or 1)输出前者
(1 or True) 输出前者
(True and 1) 输出后者
(1 and True) 输出后者
(False and 1)输出False
- 情况1:两边都是比较运算
- 在没有()的情况下,运算顺序not>and>or,同一优先级从左至右依次计算
-
编码的初识
- Ascii码:只包含英文字母,数字,特殊字符;总共有8位,最左边一位都是0;一个字符代表一个字节
- GBK:包含英文字母,数字,特殊字符和中文。国标。其中一个数字,字母,特殊字符代表一个字节;一个中文字符代表两个字节
- Unicode码(万国码):包含世界上所有的文字;最开始一个字符用两个字节表示,但是并不能包含所有的文字,后期对万国码进行升级就是UTF-8
- UTF-8:最少用八位(一个字节)表示一个字符,欧洲文字用两个字节,中文用3个字节.
'中国12he':GBK:8个字节
'中国12he':UTF-8:10个字节
8bit = 1byte
1024byte = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
1024TB = 1EB
1024EB = 1ZB
1024ZB = 1YB
1024YB = 1NB
1024NB = 1DB