Python Day 2 基础数据类型(格式化输出,逻辑运算,编码初识)

Python Day 2

python2x:     默认地板除

                 默认编码ascii
          raw_input()
python3x:     浮点运算
          默认utf
-8
          input()

Print 输出

print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=""

print( x, end=" " )

 

python字符串格式化符号:

 

    符   号描述
      %c  格式化字符及其ASCII码
      %s  格式化字符串
      %d  格式化整数
      %u  格式化无符号整型
      %o  格式化无符号八进制数
      %x  格式化无符号十六进制数
      %X  格式化无符号十六进制数(大写)
      %f  格式化浮点数字,可指定小数点后的精度
      %e  用科学计数法格式化浮点数
      %E  作用同%e,用科学计数法格式化浮点数
      %g  %f和%e的简写
      %G  %f 和 %E 的简写
      %p  用十六进制数格式化变量的地址

一、格式化输出。

%s 字符串

%d 整数

在格式化输出中,单纯的表示% 需要使用%% 去表示。

iname = input("请输入你的名字:")
iage = int(input("请输入你的年龄:"))
ijob = input("请输入你的职业")
ihobby = input("请输入你的爱好")

msg = """
name = %s
age = %d
job = %s
hobby = %s
""" % (iname,iage,ijob,ihobby)   //元组

====================================
dict = {
    'name':'zhangsan',
    'age':20,
    'job':'boss',
    'hobby':'money'
}

msg = """
name = %(name)s
age = %(age)d
job = %(job)s
hobby = %(hobby)s
""" % dict   //字典

 

二、逻辑运算符。

python 2默认地板除,只保存整数部分

否则需要引入模块from _future_ import division

+

-

*

/

%

//

and

not

or

<

>

!=  #<>

==
逻辑运算符

第一种情况: 逻辑运算符前后都是比较运算。

优先级概念: () > not > and > or ,同一优先级从左至右依次运算。

1 print(2 > 1 and 3 < 4  or 4 > 5 and 2 <1) 
2 True
3 print(1 > 2 and 3 < 4 or 4 > 5 and 2 < 1 or 9 < 8)
4 False
5 print(1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)
6 False

第二种情况:逻辑运算符前后都是数字。

数字与bool值转化

int ---> bool 非零True,零 False

bool ---> int True 1,False 0

================================

x or y : if x True ,return x , else y

 

总结:   
python中 1代表True 0代表False
or 或1得1 
and 与0得0

===================================
or x or y : x 为True 输出x的计算值 否则输出y的计算值

x or y :
x 为False
输出y的计算值 否则输出x的计算值
========================= and
x
and y : x 为True 输出y的计算值 否则输出x的计算值

x and y :
x 为False
输出x的计算值 否则输出y的计算值。

 

print(3 or 5)
3
print(2 or 5)
2
print(0 or 5)
5
print(-4 or 5)
-4

===============

print(3 and 5)
5
print(5 and 0)
0
print(0 and 5)
0
=============== print(1 > 2 and 3 or 4) 4

 

 

 

三、字符编码

初级密码本 :ascii 字母,数字,特殊字符。
0000 0001 8位== 1个字节 一个字节表示一个字符。
字符:组成内容的最小单元。 abc a b c
中国 中 国

a 01100001
b 01100010
c 01100011

万国码:unicode
创建初期 16位 两个字节表示一个字符。
a :01100001 01100001
中:01100011 01100001

升级:32位 四个字节表示一个字符。
a :01100001 01100001 01100001 01100001
中:01100011 01100001 01100011 01100001
资源浪费。
对Unicode升级 :utf-8。
utf-8:最少用8位数去表示一个字符。
a:01100001(字母用1个字节表示。)
欧洲文字:01100001 01100001(欧洲用2个字节表示。)
亚洲文字——中:01100001 01100001 01100001 (欧洲用3个字节表示。)
utf-16:最少用16位数去表示一个字符

gbk:国家标准。
a : 01100001
中: 01100001 01100001

8位 1个byte
1024bytes 1kb
1024kb 1MB
1024MB 1GB
1024GB 1TB

 

posted @ 2018-04-27 15:28  eailoo  阅读(209)  评论(0)    收藏  举报