回到主页

python快速词典

 

input()函数

broken image

对于input()函数来说不管我们输入的回答是什么不管你输入的是整数1234还是字符串『隐形斗篷是我最想拥有的魔法』input()函数的输入值搜集到的回答),永远会被强制性地转换为字符串类型。

接收多个用户输入,需要与 .split() 结合使用

a, b, c = (input("请输入三角形三边的长:").split())

a, b = [13, 15] 即将 13赋值给a,15赋值给b

最常用的数据类型有三种——字符串(str)、整数(int)和浮点数(float)

负责转换数据类型的函数一共有3种:str()、 int()和float()。

print(int(3.8))

上方的代码串就是一条将浮点数3.8强制转换的语句但是为什么输出的结果是3

int()函数的本质是将数据转换为整数所以对于浮点数int()函数会做取整处理但是同我们平时对小数四舍五入的处理方法不同int()函数会直接抹零直接输出整数部分

002

输入三个整数,把第二个输入的整数输出。

a,b,c=map(int,input().split())

print(b)

003

读入三个整数,按每个整数占8个字符的宽度,右对齐输出它们。

a,b,c=map(int,input().split())

print("%8d %8d %8d"%(a,b,c))

004

读入一个单精度浮点数,保留3位小数输出这个浮点数。

a=float(input())

print("%.3f"%(a))

005

读入一个双精度浮点数,保留12位小数,输出这个浮点数。

a=float(input())

print("%.12f"%(a))

006读入一个字符,一个整数,一个单精度浮点数,一个双精度浮点数,然后按顺序输出它们,并且要求在他们之间用一个空格分隔。输出浮点数时保留6位小数。

输入

共有四行:

第一行是一个字符;

第二行是一个整数;

第三行是一个单精度浮点数;

第四行是一个双精度浮点数。

输出

输出字符、整数、单精度浮点数和双精度浮点数,之间用空格分隔。

样例输入

a

12

2.3

3.2

样例输出

a 12 2.300000 3.200000from decimal import Decimala=input()
b=int(input())
c=float(input())
d=Decimal(input()).quantize(Decimal('0.000000'))
print(a,b,"%.6f"%(c),d)

07:输出浮点数

描述

读入一个双精度浮点数,分别按输出格式“%f”,“%f”保留5位小数,“%e”和“%g”的形式输出这个整数,每次在单独一行上输出。

输入

一个双精度浮点数。

输出

输出有四行:

第一行是按“%f”输出的双精度浮点数;

第二行是按“%f”保留5位小数输出的双精度浮点数;

第三行是按“%e”输出的双精度浮点数;

第四行是按“%g”输出的双精度浮点数。

 

broken image

 

for a in range(0,128): 

print("%d:%c "%(a,a),end='')

 

print(range(1,3)) # 如果它是函数,得到的结果是0,1,2

range(1,5,2) ,得到1,3 并不会得到5,因为“前闭后开”,而步长为2,代表取出规则是“取一个元素跳过一个元素再接着取

1. 数据类型

  • bool : 布尔型(True,False)
  • int : 整型(整数)
  • float : 浮点型(小数)
  • complex : 复数

2. 进制转换

  • bin() 将给的参数转换成二进制
  • otc() 将给的参数转换成八进制
  • hex() 将给的参数转换成十六进制

3. 数学运算

  • abs() 返回绝对值
  • divmode() 返回商和余数
  • round() 四舍五入
  • pow(a, b) 求a的b次幂, 如果有三个参数. 则求完次幂后对第三个数取余
  • sum() 求和
  • min() 求最小值
  • max() 求最大值

1. 序列

(1)列表和元组

  • list() 将一个可迭代对象转换成列表
  • tuple() 将一个可迭代对象转换成元组

print(list((1, 2, 3, 4, 5, 6))) # [1, 2, 3, 4, 5, 6]

print(tuple([1, 2,3,4,5,6])) #(1, 2, 3, 4, 5, 6)

(2)相关内置函数

  • reversed() 将一个序列翻转, 返回翻转序列的迭代器
  • slice() 列表的切片

lst = "你好啊"

it = reversed(lst) # 不会改变原列表. 返回一个迭代器, 设计上的一个规则

print(list(it)) # ['啊', '好', '你']

lst = [1, 2, 3, 4, 5, 6, 7]

print(lst[1:3:1]) # [2,3]

s = slice(1, 3, 1) # 切片用的

print(lst[s]) # [2,3]

(3)字符串

  • str() 将数据转化成字符串

print(str(123)+'456') # 123456

#format() 与具体数据相关, 用于计算各种小数, 精算等.

s = "hello world!"

print(format(s, "^20")) # 剧中

print(format(s, "<20")) # 左对齐

print(format(s, ">20")) # 右对齐

# hello world!

# hello world!

# hello world!

print(format(3, 'b')) # 二进制:11

print(format(97, 'c')) # 转换成unicode字符:a

print(format(11, 'd')) # ⼗进制:11

print(format(11, 'o')) # 八进制:13

print(format(11, 'x')) # 十六进制(⼩写字母):b

print(format(11, 'X')) # 十六进制(大写字母):B

print(format(11, 'n')) # 和d⼀样:11

print(format(11)) # 和d⼀样:11

print(format(123456789, 'e')) # 科学计数法. 默认保留6位小数:1.234568e+08

print(format(123456789, '0.2e')) # 科学计数法. 保留2位小数(小写):1.23e+08

print(format(123456789, '0.2E')) # 科学计数法. 保留2位小数(大写):1.23E+08

print(format(1.23456789, 'f')) # 小数点计数法. 保留6位小数:1.234568

print(format(1.23456789, '0.2f')) # 小数点计数法. 保留2位小数:1.23

print(format(1.23456789, '0.10f')) # 小数点计数法. 保留10位小数:1.2345678900

print(format(1.23456789e+3, 'F')) # 小数点计数法. 很大的时候输出INF:1234.567890

  • ord() 输入字符找带字符编码的位置
  • chr() 输入位置数字找出对应的字符
  • ascii() 是ascii码中的返回该值 不是就返回u

bytes() 把字符串转化成bytes类型

2. 数据集合

  • 字典:dict 创建一个字典
  • 集合:set 创建一个集合

frozenset() 创建一个冻结的集合,冻结的集合不能进行添加和删除操作。

3. 相关内置函数

  • len() 返回一个对象中的元素的个数
  • sorted() 对可迭代对象进行排序操作 (lamda)

语法:sorted(Iterable, key=函数(排序规则), reverse=False)

  • Iterable: 可迭代对象
  • key: 排序规则(排序函数), 在sorted内部会将可迭代对象中的每一个元素传递给这个函数的参数. 根据函数运算的结果进行排序
  • reverse: 是否是倒叙. True: 倒叙, False: 正序
    all() 可迭代对象中全部是True, 结果才是True
  • any() 可迭代对象中有一个是True, 结果就是True

zip() 函数用于将可迭代的对象作为参数, 将对象中对应的元素打包成一个元组, 然后返回由这些元组组成的列表. 如果各个迭代器的元素个数不一致, 则返回列表长度与最短的对象相同