python基础(二)—格式化输出

格式化输出,while else
while else:


i = 1
while i < 4:
    print(i)
    if i == 2:break
    i += 1
else:
    print('正常循环完毕')

格式化:format %s %d
第一种写法:


name = input('请输入你的名字:') age = int(input('请输入你的年龄:')) score = int(input('请输入你的成绩:')) msg = '我叫%s,今年%d岁,成绩为%d分'%(name,age,score) print(msg)
第二种写法:
name1 = input('请输入你的名字:')
age1 = input('请输入你的年龄:')
score1 = input('请输入你的成绩:')

msg = '我叫%(name)s,今年%(age)s岁,成绩为%(score)s分'\
      %{'age':age1,'name':name1,'score':score1}
print(msg)
另一种写法
msg = '我叫%s,今年%d岁,学习进度为2%%' %('',21)
print(msg)

 

逻辑运算符
优先级:() > not > and > or

 print(2 > 1 and 3 > 4)print(2 > 1 or 3 > 4) print(not 2 > 1)a = 2 > 1 and 2 < 3 or 2 > 4 and 1 < 5 or 7 < 4print(a)

练习题


#1,前后都是比较的条件

print
(3 > 4 or 4 < 3 and 1==1) # F print(1 < 2 and 3 < 4 or 1>2 ) # T print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1) # T print(1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8) # F print(1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6) # F print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6) # F

#2,前后都是数字

print
(1 or 2) print(2 or 3) print(0 or 2) print(0 or 3)
print(1 and 2)
print(0 and 3)
x or y if x 为 True,则值是x ;else:值是y.
and 与or相反

ps: str ---> int int(str) 字符串必须是数字组成
int----> str str(int)

int ---> bool 非0 ----> True
0 -----> False

print(1 or 3 and 4 or 5)
print(2 > 1 or 1 and 3 < 2)
编码历史
密码本:
ascii
00000001
01000001 01000010 01000011 ABC

因为全球语言很多,ascii不足以存储这么多对应关系,创建了一个超级密码本:万国码unicode
8 位 == 1个字节.
hello h一个字符,e一个字符,he就不是一个字符.
中国:中是一个字符,国是一个字符.
unicode :
创建之初,16位,2个字节,表示一个字符.
英文: a b c 六个字节 一个英文2个字节
中文 中国 四个字节 一个中文用2个字节
改成 32位,4个字节,表示一个字符.
a 01000001 01000010 01000011 00000001
b 01000001 01000010 01100011 00000001
中 01001001 01000010 01100011 00000001
浪费资源.
对Unicode进行升级: utf-8
utf-8 用最少用8位数,去表示一个字符.
英文: 8位,1个字节表示.
欧洲文字: 16位,两个字节表示一个字符.
中文,亚洲文字: 24位,三个字节表示.
utf-16 用最少用16位数.

gbk:
国标,只能中国人自己用, 一个中文用16位,两个字节表示.

单位转化:
8位bit 8bit == 1bytes
1024bytes == 1kB
1024KB == 1MB
1024MB == 1GB
1024GB == 1TB










posted @ 2018-01-22 19:56  小黑啊小黑  阅读(301)  评论(0)    收藏  举报