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

浙公网安备 33010602011771号