python数字的表示

在这里插入图片描述

科学计数法

在这里插入图片描述

四舍五入

round() 方法返回浮点数x的四舍五入值。第二个参数就是保留几个小数,默认为0。如果不填第二个参数返回的是整数,否则类型与一样
int则是剪去小数部分,只保留前面的整数,即向零取整
int()不可以用于非整数的字符串
eval()可以运算,不能用于先导0的数字
在这里插入图片描述

类型转换

int(x [,base]) ⇒ 将x转换为一个十进制的整数 
long(x [,base]) ⇒ 将x转换为一个十进制的长整数 
float(x) ⇒ 将x转换为一个浮点数 
str(object) ⇒ 转换为字符串 
repr(object) ⇒ 转换为表达式字符串 
eval(str) ⇒ 用来计算在字符串中的有效Python表达式,并返回一个对象 
tuple(seq) ⇒ 将序列seq转换为一个元组 
list(seq) ⇒ 将序列seq转换为一个列表 
chr(x ) ⇒ 将一个整数转换为一个字符 
unichr(x ) ⇒ 将一个整数转换为Unicode字符 
ord(x ) ⇒ 将一个字符转换为它的整数值 
hex(x ) ⇒ 将一个整数转换为一个十六进制字符串 
oct(x ) ⇒ 将一个整数转换为一个八进制字符串

更多

# 16->2,8,10
a=int(input("16->2,8,10:"),base=16)
print("2:{:b}\n8:{:o}\n10:{:d}".format(a,a,a))

# 10->2,8,16
a = int(input("请输入一个十进制整数:"))
print("其对应二进制为{:b}\n八进制为{:o}\n十六进制为{:x}".format(a,a,a))


# 8->2,8,10
a = int(input("请输入一个八进制整数:"),base=8)
print("其对应二进制为{:b}\n八进制为{:o}\n十进制为{:d}".format(a,a,a))


# 2->8,10,16
a = int(input("请输入一个二进制整数:"),base=2)
print("八进制为{:o}\n十进制为{:d}\n其对应十六进制为{:x}".format(a,a,a))

在这里插入图片描述

基本运算

在这里插入图片描述
divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数
在这里插入图片描述

数学函数

需要

import math

在这里插入图片描述
还有math.degrees(x) 弧度-》角度
math.radians(x) 角度-》弧度
math.pi,math.e
对比 :
int()函数是“向0取整”,取整方向总是让结果比小数的绝对值更小
“整除”符号运算将结果忠实地向下取整,与math.floor()处理结果一样

常用函数

abs()
max() min()
pow(a,b)
round(x)
round(x,n)保留小数点后n位
常用更多函数

随机函数

在这里插入图片描述

函数范围

在这里插入图片描述
在这里插入图片描述

字符串的转换

Python 使用了
ord() 函数返回单个字符的编码,
chr() 函数把编码转成相应字符。

转移符号

在这里插入图片描述

运算符

在这里插入图片描述

字符串的用法特例

在这里插入图片描述

>>> eval(str(19)+'1')
191
>>> eval((str(19))+'+1')
20

格式化

在这里插入图片描述
格式:format(,item,format-specifier)

>>> print(format(1.2300,'1.3f'))
1.230
>>> print(round(1.23,2))
1.23
>>> print(round(1.2301,3))
1.23

<左对齐
字符串默认左对齐
数字默认右对齐

格式化%s %d %f

%s


# %s
print("%s")
string="HelloWorld"
# 1: %2s意思是字符串长度为2,当原字符串的长度超过2时,按原长度打印,所以%2s的打印结果还是helloWorld
print("string=%2s"%string)
print("string=%12s"%string)
print("string=%-12s\n"%string)

print("string="+format(string,"12s"))
print("string="+format(string,"<12s"))
print("string="+format(string,">12s"))
print()

# 2: %.2s意思是截取字符串的前2个字符,所以%.2s的打印结果是he
print("string=%.2s\n" % string)     # output: string=He

# 3: %a.bs这种格式是上面两种格式的综合,首先根据小数点后面的数b截取字符串,
#当截取的字符串长度小于a时,还需要在其左侧补空格
print("string=%7.2s\n" % string)           # output: string=     He

# 4: 还可以用%*.*s来表示精度,两个*的值分别在后面小括号的前两位数值指定
print ("string=%*.*s\n" % (7,2,string)  )    # output: string=     He

在这里插入图片描述

%d

# %d
print("%d")
num=110
# 1:    %1d意思是打印结果为1位整数,当整数的位数超过1位时,按整数原值打印,所以%1d的打印结果还是110
print("num=%1d"%num)
# 2:    %4d意思是打印结果为4位整数,当整数的位数不够4位时,在整数左侧补空格,所以%3d的打印结果是 110
print("num=%4d"%num)
# 3:     %-4d意思是打印结果为4位整数,当整数的位数不够4位时,在整数右侧补空格,所以%3d的打印结果是110
print("num=%-4d"%num)
# 4       %05d意思是打印结果为5位整数,当整数的位数不够5位时,在整数左侧补0,所以%05d的打印结果是00110
print ("num=%05d" % num )
# 5:      %.4d小数点后面的4意思是打印结果为4位整数,当整数的位数不够4位时,在整数左侧补0,所以%.4d的打印结果是0110
print ("num=%.4d" % num )
# 6:     %.004d小数点后面的0044一样,都表示4,意思是打印结果为4位整数,
print( "num=%.004d" % num)       # output: num=0110
# 7:    %5.4d是两种补齐方式的综合,当整数的位数不够4时,先在左侧补0,还是不够5位时,再在左侧补空格,
#规则就是补0优先,最终的长度选数值较大的那个,所以%5.4d的打印结果还是num= 0110
print ("num=%5.4d" % num)
# 8:    %05.4d是两种补齐方式的综合,当整数的位数不够4时,先在左侧补0,还是不够5位时,    
#由于是05,再在左侧补0,最终的长度选数值较大的那个,所以%05.4d的打印结果还是num=00110    
print("num=%05.4d" % num) # output:num= 0110
# 9:    还可以用%*.*d来表示精度,两个*的值分别在后面小括号的前两位数值指定
#如下,不过这种方式04就失去补0的功能,只能补空格,只有小数点后面的3才能补0
print( "num=%*.*d" % (0o5, 4, num)) # output: num= 0110
print( "num=%*.*d" % (5, 4, num)) # output: num= 0110

在这里插入图片描述

%f

print("%f")
import math
#%a.bf,a表示浮点数的打印长度,b表示浮点数小数点后面的精度    
# 1:    只是%f时表示原值,默认是小数点后5位数    
print("PI=%f"%math.pi )# output: PI=3.141593    
# 2:    #只是%9f时,表示打印长度9位数,小数点也占一位,不够左侧补空格 
print("PI=%9f"%math.pi)                # output: PI= 3.141593 
# 3:    只有.没有后面的数字时,表示去掉小数输出整数,03表示不够3位数左侧补0
print("PI=%03.f"%math.pi)              # output: PI=003
# 4:    %6.3f表示小数点后面精确到3位,总长度6位数,包括小数点,不够左侧补空格    
print("PI=%6.3f"%math.pi)               # output: PI=_3.142    
# 5:    %-6.3f表示小数点后面精确到3位,总长度6位数,包括小数点,不够右侧补空格 
print("PI=%-6.3f"%math.pi)               # output: PI=3.142
# 6:    还可以用%*.*f来表示精度,两个*的值分别在后面小括号的前两位数值指定  
#如下,不过这种方式06就失去补0的功能,只能补空格  
print("PI=%*.*f" % (0o6, 3, math.pi))               # output:PI= 3.142
print("PI=%*.*f" % (6, 3, math.pi))               # output: PI= 3.142

在这里插入图片描述

Python3.6同时输入多个值

1. 同时输入多个字符串,字符串间以逗号/空格间隔

a,b,c=input(‘三个字符串:’).split(’,’)
a,b,c=input(‘三个字符串:’).split()

2. 同时输入多个数值,字符串间以逗号/空格间隔

a,b,c=eval(input(‘三个数字:’))
a,b,c=map(eval,input(‘三个数字:’).split())
由于input( )输出的是用空格分开的字符串,split( )会分割开各个值并放到列表中,此时在列表中的值是字符串,如果要用于运算必须在map( )中利用int( )或者float( )等处理,再赋值。如果需要赋值的值都是字符串的话就没必要用map函数了。

发布了156 篇原创文章 · 获赞 16 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_44001521/article/details/104008183
今日推荐