319 Python基础之格式化输出、逻辑运算符、编码、in not in、while else、
一、格式化输出
占位符%,字符串占位符%s,数字占位符%d
第一种
name = input('姓名')
age = input('年龄')
hobby = input ("爱好")
msg="我叫%s,我今年%d,我喜欢%s"%(name,int(age),hobby)
print(msg) 第二种
dic = {'name': '老男孩', 'age': 51, 'hobby': '吃'}
msg = '我叫%(name)s,我今年%(age)d,我喜欢%(hobby)s' % dic
print(msg) 第三种
在格式化输出中单纯的显示% 用%% 解决
name=input('输入名字')
age=input('年龄')
msg='我叫%s,今年%d,学习进度是1%%' % (name,int(age))
print(msg)
二、while else
如果循环被break打断,程序不会走else
例如:
count=1
while True:
print(count)
if count==3:break
count+= 1
else:
print('正常') count=1
flag=True
while flag:
print(count)
if count ==3:
flag=False
count+=1
else:
print('正常'
三、in not in
判断子元素是否在原字符串(字典,列表,集合)中:
s = 'abcdefghijklmn'
print('abc' in s)
print('ds' in s)
print('abc' in s)
print('qwe' not in s)
应用于敏感词排查
comment = input('留言板')
if '进行' in comment:
print('用词过于随便,请您三思')
四、逻辑运算符 and or not
第一种:前后都是比较运算
优先级:()>not>and>or,同一个优先级,从左至右依次计算。
print(1 > 2 and 3 < 4 and 3 > 2 or 2 < 3) True
print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1) True
print(1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8) False
第二种:前后都是数值运算
x or y if x True,则 return x,否则 return y
x and y if x True,则return y,否则return x
int ---> bool 非0即True,0为False
bool---> int True 1 False 0
print(int(True))
print(int(False))
print(bool(100))
print(bool(0))
print(1 or 3) 1
print(1 or 3)1
print(2 or 3)2
print(0 or 3)3
print(-1 or 3)-1
print(1 and 2)2
print(0 and 2)0
第三种:混合。
print(1 > 2 or 3 and 4)4
print(2 or 2 > 3 and 4)2
print(0 or 2 > 3 and 4)False
五、编码
计算机在存储和传输的时候,用的是 01010101的二进制编码。
最早的是asiic 包含数字,英文,特殊字符。8位,8位 = 1 byte 表示一个字符。现在Python2x还在用。
万国码unicode,将所有国家的语言包含在这个密码本。
初期:16位,两个字节,表示一个字符。
升级:32位,四个字节,表示一个字符。
优点,大而全,缺点,占据太多内存,资源浪费。
utf-8。最少用8位(一个字节),表示一个字符。(Python3x的默认编码)
英文:a :00010000 用8位表示一个字符。
欧洲:00010000 00010000 16位两个字节表示一个字符。
亚洲 中 :00010000 00010000 00010000 24位,三个字节表示一个字符。
gbk:国标。(国产)
只包含:英文中文。
英文:a :00010000 8位,一个字节表示一个字符。
中文:中:00010000 00010000 16位,两个字节表示一个字符。
8 bit = 1byte
1024byte=1kb
1024kb = 1MB
1024MB = 1GB
1024GB = 1TB
最新文章
- HIS-DELPHI-读取数据库配置
- js 浮点运算出现的精度丢失问题
- ubuntu 状态栏不显示时间
- java 个人总结
- vmware10中开启Intel VT-x
- libvirt编译报错
- DIV焦点事件
- webservice发送数据,取数据的方式
- YUM变量
- Code Blocks 使用 VC2013编译HelloWord
- [原]开源的视频转换器,支持gpu,绝对好用ffmpeg的GUI==》dmMediaConverter最新版本2.3
- 【CF765F】Souvenirs 主席树
- windows中obs源码编译的坑
- git revert 还有这个坑?
- IIS7 禁止目录运行脚本
- vuex 子组件传值
- vue2.0模拟锚点
- Util-linux-ng-2.17
- php redis中文手册
- JSP生成静态html网页