while循环/格式化输出/运算符/编码
1. while循环
while 条件:
循环体(break,continue)
else:
循环体(break,continue)
break:彻底干掉一个循环,直接跳出.
continue:停止当次循环,继续执行下一次循环.
while true: content = input("你要输入的内容,输入q退出:") if content ="" continue #如果输入为空,会执行下一次循环,接着出现 你要输入的内容: if content = "q": break # 退出程序,直接跳出循环 print("你想对打野说:",content)
2. 格式化输出
name = input("请输入你的名字:") address = input("请输入你的家庭住址:") wife = input("你女朋友叫什么:") #格式化输出: print("我叫%s,我住在%s,我女朋友叫:" % (name,address,wife)) #新版格式化输出: print(f"我叫{name},我住在{address},我女朋友叫{wife}")
%s 占位 表示字符串的占位,全能的占位
%d 只是表示数字的占位
坑来了: 如果使用了格式化输出,%就是占位符,如果想正常显示% 则%% %%转义.
print("我叫%s,我已经学习了31%%的python内容了" % "麻花藤")
3. 运算符
and : 并且,如果左右两端全为真,结果才是真.
or : 或者,如果左右两端有一个为真,结果就是真.
not : 非,非真既假,非假既真
混合运算的运算顺序:
() => not => and => or
当出现x or y 时,判断 x 是否为0 ,如果 x == 0 ,则结果为 y ;否则结果为 x.
当出现x and y时,与 x or y 相反
成员运算:
content = input("请输入你的评论:") if "马化腾" in content:#content中包含了xxx. print ("你的评论不合法") else: print("你的评论是合法的") ad = input("请输入你的广告语:") if "最" in ad and "第一" in ad and "世界" in ad: print("您的广告不符合广告法") else: print("您的广告审核通过")
4. 编码
1. ascll码 8bit 1byte(字节) 2**8 有256个码位 只用到了7bit,用到了前128个 最前面的一位是0
2. 由于ascll码没有中文,所以中国人对编码进行了统计,自己设计对ascll进行扩展 ansi 16bit->清华同方->gbk gbk中放的是中文编码,16bit 2byte 兼容ascll
3. 对所有编码进行统一 unicode 万国码. 32bit 4byte 够用了 但是太浪费了
4. utf-8 可变长度的unicode
英文 1byte
欧洲文字 2byte
中文 3byte
1 byte = 8bite
1kb = 1024 bite
1024k = 1mb
1024mb = 1gb
1024gb = 1tb
1024tb = 1pb
推荐阅读