(1)题目描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/9b1392c426b74d7abeafbefb18a261cf.png)
(2)Python3实现
n = float(input())
x = 1
while abs(x**3 - n) > 1e-7:
# 立方根公式
x = x - (x**3 - n) / (3*x**2)
print(round(x, 1))
(3)知识点详解
1、input():获取控制台(任意形式)的输入。输出均为字符串类型。
str1 = input()
print(str1)
print('提示语句:', str1)
print(type(str1))
'''
asd123!#
提示语句: asd123!#
<class 'str'>
'''
常用的强转类型 |
说明 |
int(input()) |
强转为整型(输入必须时整型) |
list(input()) |
强转为列表(输入可以是任意类型) |
1.1、input() 与 list(input()) 的区别、及其相互转换方法
-
相同点:两个方法都可以进行for循环迭代提取字符,提取后都为字符串类型。
-
不同点:
str = list(input())
将输入字符串转换为list类型,可以进行相关操作。如: str.append()
- 方法一:
print(''.join(str))
- 方法二:
print(''.join(map(str, str_list)))
备注:若list中包含数字,则不能直接转化成字符串,否则系统报错。
- 方法一:
print(''.join([str(ii) for ii in str_list]))
- 方法二:
print(''.join(map(str, str_list)))
map():根据给定函数对指定序列进行映射。即把传入函数依次作用到序列的每一个元素,并返回新的序列。
(1) 举例说明:若list中包含数字,则不能直接转化成字符串,否则系统报错。
str = ['25', 'd', 19, 10]
print(' '.join(str))
'''
Traceback (most recent call last):
File "C:/Users/Administrator/Desktop/test.py", line 188, in <module>
print(' '.join(str))
TypeError: sequence item 3: expected str instance, int found
'''
(2)举例说明:若list中包含数字,将list中的所有元素转换为字符串。
str_list = ['A', 'aA', 2.0, '', 1]
print(''.join(str(ii) for ii in str_list))
print(''.join([str(ii) for ii in str_list]))
print(''.join(map(str, str_list))) # map():根据给定函数对指定序列进行映射。即把传入函数依次作用到序列的每一个元素,并返回新的序列。
'''
AaA2.01
AaA2.01
AaA2.01
'''
2、print() :打印输出。
【Python】print()函数的用法
x, y = 1, 9
print('{},{}' .format(x, y)) # 打印方法一
print('*'*10) # 打印分割符
print(x, ',', y) # 打印方法二
'''
1,9
**********
1 , 9
'''
3、while循环 —— 用于在某个条件为真(True)时重复执行一段代码块。
while condition:
# 在condition条件为真时,该代码块执行。
"""
备注:condition 是一个布尔表达式。
当其值为 True 时,循环将继续执行。
当条件为 False 时,循环将停止执行并退出。
备注:while 循环的代码块被缩进,通常用四个空格或一个制表符来缩进,以表示它们属于循环体。
"""
举例:使用 while 循环来打印从1到3的数字。
count = 1
print("打印结果:")
while count <= 3:
print(count)
count += 1
"""
打印结果:
1
2
3
"""
4、abs()与fabs()的区别(返回输入x的绝对值)
abs() |
fabs() |
abs()是python的内置函数 |
fabs()是math模块中的函数 |
适用于float型、int型、复数类型 |
只适用于float型、int型 |
(若输入为整型,则返回整型)若输入为浮点型或复数类型,则返回浮点型。 |
(只返回浮点值)若输入为整型,则自动保留一个小数。 |
import math
# 输入整型
print(abs(10)) # 10
print(math.fabs(10)) # 10.0
# 输入浮点型
print(abs(10.125)) # 10.125
print(math.fabs(10.125)) # 10.125
# 输入复数类型
print(abs(10.125+12j)) # 15.62850460696736
# print(math.fabs(10.125+12j)) # TypeError: can't convert complex to float
5、round():返回浮点数x的四舍五入值。可指定保留几位小数,只对浮点数有效。
函数说明:round(x, n)
输入参数:
-
x
:浮点数。
-
n
:保留小数点的位数。
备注:若为整数,则即使指定了保留小数点的位数,也直接输出整数。
四舍五入的规则:
(1)要求保留位数的后一位 <=4,则进位。如:round(5.214,2)
,结果为5.21。
(2)要求保留位数的后一位 =5,且该位数后面没有数字,则不进位,如:round(5.215, 2)
,结果为5.21。
(3)要求保留位数的后一位 =5,且该位数后面有数字,则进位,如:round(5.2151, 2)
,结果为5.22。
(4)要求保留位数的后一位 >=6,则进位。如:round(5.216,2)
,结果为5.22。
print(round(5, 2)) # 5 # 整数
print(round(5.214, 2)) # 5.21 # <=4,则进位
print(round(5.215, 2)) # 5.21 # =5,且该位数后面没有数字,则不进位
print(round(5.2151, 2)) # 5.22 # =5,且该位数后面有数字,则进位
print(round(5.216, 2)) # 5.22 # >=6,则进位
6、浮点型float() :将数字、字符串或布尔值转化为浮点数(强转) —— 只支持十进制输入和输出。
函数说明:float(object)
输入参数:
-
object
:整数、字符串、布尔值(若没有输入参数,则float=0.0
)
备注1:当非十进制的字符串作为参数时,若超出数字字符时会报错。比如:float('2a1')
备注2:不能进行不同进制之间的转换,否则系统报错。与int()完全不同。
print('空输入参数', float())
print('整数转换为浮点数', float(5))
print('浮点数转换为浮点数', float(-5.5))
print('字符串转换为浮点数', float('-5.5'))
print('布尔值转换为浮点数', float(True))
'''
空输入参数 0.0
整数转换为浮点数 5.0
浮点数转换为浮点数 -5.5
字符串转换为浮点数 -5.5
布尔值转换为浮点数 1.0
'''
7、算术运算符
序列 |
运算符 |
名称 |
说明 |
举例 |
结果 |
数据类型 |
【1】 |
+ |
加 |
(1)对于数字:求和。 |
c = 1 + 2 |
c = 3 |
int型 |
【1】 |
+ |
加 |
(2)对于序列类型(如:字符串):拼接操作 |
str = 'a' + 'b' |
str = 'ab' |
字符串型 |
2 |
- |
减 |
求差值 |
c = 1 - 2 |
c = -1 |
int型 |
【3】 |
* |
乘 |
(1)对于数字:求积。 |
c = 2 * 3 |
c = 6 |
int型 |
【3】 |
* |
乘 |
(2)对于序列类型(如:字符串):重复操作 |
str = 'a' * 3 |
str = 'aaa' |
字符串型 |
4 |
/ |
除 |
求商(两个整数或浮点数相除,结果为float型) |
c = 3 / 2 |
c = 1.5 |
浮点型 |
5 |
% |
取余 |
求余数 |
c = 3 % 2 |
c = 1 |
int型 |
6 |
** |
幂 |
求次幂 |
c = 3 ** 2 |
c = 9 |
int型 |
【7】 |
// |
地板除法 |
向下取整。(1)两个整数相除,结果为int型 |
c = 3 // 2 |
c = 1 |
int型 |
【7】 |
// |
地板除法 |
向下取整。(2)除数或被除数为float类型,则结果为float类型。 |
c = 3 // 2.0 |
c = 1.0 |
浮点型 |