设为首页 加入收藏

TOP

python的学习之路day5(二)
2017-12-24 06:07:06 】 浏览:933
Tags:python 习之 day5
uot;
: index() main() v2

输出:

1、登录;2、查看信息;3超级管理员
>>>2
请登录
1、登录;2、查看信息;3超级管理员
>>>3
请登录
1、登录;2、查看信息;3超级管理员
>>>1
请输入用户名:user
1、登录;2、查看信息;3超级管理员
>>>2
home
1、登录;2、查看信息;3超级管理员
>>>3
无权限查看
1、登录;2、查看信息;3超级管理员
>>>1
请输入用户名:admin
1、登录;2、查看信息;3超级管理员
>>>2
home
1、登录;2、查看信息;3超级管理员
>>>3
index
1、登录;2、查看信息;3超级管理员
>>>
v2的输出

输出效果完全一样,注意看v2的注释

 

装饰器的原理(多层原理也一样):

字符串的格式化:

%[(name)] [flags] [width].[precision] typecode
# 字符串格式化
# %[(name)] [flags] [width].[precision] typecode

# 常规的格式化
string = "博客网址:www.cnblogs.com/%s,园龄:%d个月" % ("smelond", 1)
print(string)

# %[(name)]可选,用于指定的key:
string = "博客网址:www.cnblogs.com/%(name)s,园龄:%(age)d个月" % {"name": "smelond", "age": 1}  # 用字典方式
print(string)

# flags 可选,可供选择的值有(听说没卵用)
# +   右对齐:正数前加正号,负数前加负号
# -   左对齐:正数前无符号,负数前加负号
# 空格 右对齐:正数前加空格,负数前加负号
# 0   右对齐:正数前无符号,负数前加负号;用0填充空白处
string = "博客网址:www.cnblogs.com/%(name)+20s,园龄:%(age)-10d个月" % {"name": "smelond", "age": 1}  # 占有20个空格,smelond在其中,向右对齐
print(string)

# width 可选,占有宽度

# .precision 可选,小数点后保留的位数
string = "数值:%(p).2f" % {"p": 1.23656}  # 在后面加上.然后数字,代表保留几位,有四舍五入功能
print(string)

# typecode 必选
#         s,获取传入对象的__str__方法的返回值,并将其格式化到指定位置
#         r,获取传入对象的__repr__方法的返回值,并将其格式化到指定位置(面向对象内容)
#         c,整数:将数字转换成其unicode对应的值,10进制范围为 0 <= i <= 1114111(py27则只支持0-255);字符:将字符添加到指定位置
#         o,将整数转换成 八  进制表示,并将其格式化到指定位置
#         x,将整数转换成十六进制表示,并将其格式化到指定位置
string = "%c___%o___%x" % (65, 15, 15)  # 将十进制转换为其他进制(A,17,f)
print(string)

#         d,将整数、浮点数转换成 十 进制表示,并将其格式化到指定位置
#         e,将整数、浮点数转换成科学计数法,并将其格式化到指定位置(小写e)
#         E,将整数、浮点数转换成科学计数法,并将其格式化到指定位置(大写E)
#         f, 将整数、浮点数转换成浮点数表示,并将其格式化到指定位置(默认保留小数点后6位)
#         F,同上
string = "%d--------%f--------%e--------%E-------%.2ef" % (100000000, 1.23456, 10000000, 10000000, 10000000)
print(string)

#         g,自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置(如果是科学计数则是e;)
#         G,自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置(如果是科学计数则是E;)
string = "%g-------%g-------%G-------%G" % (10000000, 100, 10000000, 100)
print(string)

#         %,当字符串中存在格式化标志时,需要用 %%表示一个百分号
string = "name:%s %% %%%%" % "smelond"  # 如果需要输出一个%,但是前面已经有了一个占位符,那就需要输出%%才能代表一个%,否者会报错,需要输出%%,就需要%%%%
print(string)
#
# 注:Python中百分号格式化是不存在自动将整数转换成二进制表示的方式
string_formating.py
博客网址:www.cnblogs.com/smelond,园龄:1个月
博客网址:www.cnblogs.com/smelond,园龄:1个月
博客网址:www.cnblogs.com/             smelond,园龄:1         个月
数值:1.24
A___17___f
100000000--------1.234560--------1.000000e+07--------1.000000E+07-------1.00e+07f
1e+07-------100-------1E+07-------100
name:smelond % %%
输出

 

format格式化:

# [[fill]align] [sign] [#] [0] [widht] [,] [.precision] [type]
# fill         【可选】空白处填充的字符
# align        【可选】对齐方式(需配合width使用)
#   < ,内容左对齐
#   > ,内容右对齐(默认)
#   =,内容右对齐,将符号放置在填充字符的左侧,且只对数字类型有效。 即使:符号 + 填充物 + 数字
#   ^ ,内容居中


# sign         【可选】有无符号数字
#   +,正号加正,负号加负;
#   -,正号不变,负号加负;
#   空格 ,正号空格,负号加负;


# #             【可选】对于二进制、八进制、十六进制,如果加上#,会显示 0b/0o/0x,否则不显示
# ,            【可选】为数字添加分隔符,如:1, 000, 000
# width         【可选】格式化位所占宽度
# .precision    【可选】小数位保留精度
# type          【可选】格式化类型
#   传入” 字符串类型 “的参数
#       s,格式化字符串类型数据
#       空白,未指定类型,则默认是None,同s
#   传入“ 整数类型 ”的参数
#       b,将10进制整数自动转换成2进制表示然
首页 上一页 1 2 3 4 下一页 尾页 2/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Python3(二)简单的输入输出及内.. 下一篇Python2.7.14安装和pip配置安装及..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目