python2和python3的区别 print-Python2与Python3中print用法总结

Python2中的print用法

在Python2 中 print 是一种输出语句

strHello = "Hello Python"

print strHello

# Hello Python

1.格式化输出整数

strHello = "the length of (%s) is %d" %("Hello Wordld", len("Hello World"))

print strHello

# the length of (Hello Wordld) is 11

2.格式化输出16进制整数

# 格式 描述

# %% 百分号标记

# %c 字符及其ASCII码

# %s 字符串

# %d 有符号整数(十进制)

# %u 无符号整数(十进制)

# %o 无符号整数(八进制)

# %x 无符号整数(十六进制)

# %X 无符号整数(十六进制大写字符)

# %e 浮点数字(科学计数法)

# %E 浮点数字(科学计数法,用E代替e)

# %f 浮点数字(用小数点符号)

# %g 浮点数字(根据值的大小采用%e或%f)

# %G 浮点数字(类似于%g)

# %p 指针(用十六进制打印值的内存地址)

# %n 存储输出字符的数量放进参数列表的下一个变量中

nHex = 0x20

print "nHex = %x, nDec = %d, nOct = %o" %(nHex, nHex, nHex)

# nHex = 20, nDec = 32, nOct = 40

输出二进制的话,可以使用python函数bin()

# Python 2.7.10 (default, Feb 7 2017, 00:08:15)

# [GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin

# Type "help", "copyright", "credits" or "license" for more information.

# >>> bin(789)

# "0b1100010101"

# >>>

3.格式化输出浮点数(float)

%字符:标记转换说明符的开始

最小字段宽度:转换后的字符串至少应该具有该值指定的宽度。如果是*,则宽度会从值元组中读出

转换标志:-表示左对齐;+表示在转换值之前要加上正负号;""(空白字符)表示正数之前保留空格;0表示转换值若位数不够则用0填充

点(.)后跟精度值:如果转换的是实数,精度值就表示出现在小数点后的位数。如果转换的是字符串,那么该数字就表示最大字段宽度。如果是*,那么精度将从元组中读出

import math

#default

print "PI = %f" % math.pi

# PI = 3.141593

# width = 10, precise = 3, align = left

print "PI = %10.3fxxx" % math.pi

# PI = 3.142xxx

# width = 10, precise = 3, align = right

print "PI = %-10.3fxxx" % math.pi

# PI = 3.142 xxx

# 前面填充字符串

print "PI = %06d" % int(math.pi)

# PI = 000003

4.格式化输出字符串(string)

# precise = 3

print "%.3s" % ("jcodeer")

# jco

# precise = 4

print "%.*s" % (4,"jcodeer")

# jcod

# width = 10, precise = 3

print "xx%10.3s" % ("jcodeer")

# xx jco

5.输出列表(list)

l = [1, 2, 3, "jcodeer"]

print l

# [1, 2, 3, "jcodeer"]

6.输出字典(dictionary)

d = {1: "A",2: "B",3: "C",4: "D"}

print d

# {1: "A", 2: "B", 3: "C", 4: "D"}

7.python print 自动换行

# print会在行末加上回车,如果不需要,只需在print语句结尾添加一个逗号","

for i in range(0,5):

print i,

# 0 1 2 3 4

或者直接使用下面的函数进行输出:

import sys

sys.stdout.write("输出的字符串")

8.万能的 %r

它可以将后面给的参数原样打印出来,带有类型信息

formatter = "%r %r %r %r"

print formatter % (1, 2, 3, 4)

print formatter % ("one", "two", "three", "four")

print formatter % (True, False, False, True)

print formatter % (formatter, formatter, formatter, formatter)

print formatter % (

"I had this thing.",

"That you could type up right.",

"But it didn"t sing.",

"So I said goodnight."

)

# 1 2 3 4

# "one" "two" "three" "four"

# True False False True

# "%r %r %r %r" "%r %r %r %r" "%r %r %r %r" "%r %r %r %r"

# "I had this thing." "That you could type up right." "But it didn"t sing." "So I said goodnight."

9.矩阵输出

import numpy as np

a = np.array([[1,2],[3,4]])

b = np.array([[5,6],[7,8]])

print a

# [[1 2]

# [3 4]]

print b

# [[5 6]

# [7 8]]

print a, b

# [[1 2]

# [3 4]] [[5 6]

# [7 8]]

Python3中的print用法

在Python3 中print 是一个函数,通过格式化函数format()来控制输出格式

1. 通过位置标号

# {0}表示第一个元素, {1}表示第二个元素, {2}表示第三个元素,以此类推。。。

a = "Ace"

b = "hello"

print("{1}, my name is {0}".format(a, b))

# hello, my name is Ace

2. 通过关键词参数

name = "Ace"

age = 26

print("{myname}"s age is {myage}".format(myname=name, myage=age))

# Ace"s age is 26

3. 通过属性和下标

person = ["Ace", 26]

print("{0[0]}"s age is {0[1]}".format(person))

# Ace"s age is 26

print("{people[0]}"s age is {people[1]}".format(people=person))

# Ace"s age is 26

字典字符串不需要加引号

person = {"Ace": 26}

print("{myname}"s age is {people[Ace]}".format(myname=name,people=person))

# Ace"s age is 26

4. 格式化限定符

{0:0.3f} {1:3d} 在序号后面加上格式符就可以了,不用加%

5.填充与对齐

^,<,>分别代表居住,左对齐,右对齐,后面带宽度

a = 123.456789

haha = "haha!!!"

print("{0:0.3f}, *{1:<14}*".format(a, haha))

print("{0:0.3f}, *{1:>14}*".format(a, haha))

print("{0:0.3f}, *{1:^14}*".format(a, haha))

print("{0:0.3f}, *{1:}*".format(a, haha))

# 123.457, *haha!!! *

# 123.457, * haha!!!*

# 123.457, * haha!!! *

# 123.457, *haha!!!*

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值