number
python中数字对应的类型有4种:int、float、bool、complex(复数)
注意:浮点数有的时候表示的时候不准确结果是约等于的值,这是计算机本身在存储浮点数的问题
bool类型是一种特殊的整型,True本质就是1、False本质就是0
complex(复数)
由实部和虚部组成的数就是复数
结构:a + bj (j是虚数单位,j**2是-1; a是实部,b是虚部)
a = 2+3j
b = 3+1j # 注意:虚部的1不能省
print(type(a)) # <class 'complex'>
python的复数直接支持复数运算:
print(a + b) # 5+4j
print(a * b) # 3+11j
数学模块
import math, cmath
# math - 普通数据的数学模块
# cmath - 复数的数学模块
math.ceil(数据) - 将浮点数转换成整数(向大取整)
print(math.ceil(1.23)) # 2
math.fabs(数据) - 获取指定数的绝对值
print(math.fabs(-100)) # 100.0
math.factorial(数) - 求指定数的阶乘
print(math.factorial(5)) # 120 == 1*2*3*4*5
math.floor(数字) - 将浮点数转换成整数(向小取整)
print(math.floor(2.13)) # 2
round(数字) - 将浮点数转换成整数(四舍五入)
# 注意:X.5的时候,X是偶数就舍,是奇数就入
print(round(4.5)) # 4
print(round(5.5)) # 6
第一周作业
一、选择题
-
下列变量名中不合法的是?(C)
A. abc
B. Npc
C. 1name
D ab_cd
-
下列选项中不属于关键字的是?(B)
A. and
B. print
C. True
D. in
-
下面哪个选项对应的代码写法是正确的?(C)
A.
print('Python') print('新手村')
B.
print('Python') print('新手村')
C.
print('Python') print('新手村')
D.
print('Python''新手村')
-
下面选项中能打印出50的是?B
A.
print('100 - 50')
B.
print(100 - 50)
-
关于引号,下面选项中使用正确的是?D
A.
print('hello)
B.
print("hello')
C.
print(“hello”)
D.
print("hello")
二、编程题
-
写代码在控制台打印
good good study, day day up!
print('good good study, day day up!')
-
写代码在控制台打印5次
you see see, one day day!
for x in range(5): print('you see see, one day day!')
-
写代码打印数字 11、12、13、… 21
for x in range(11, 22): print(x)
-
写代码打印数字 11,13,15,17,…99
for x in range(11, 100, 2): print(x)
-
写代码打印数字:10、9、8、7、6、5
for x in range(10, 4, -1): print(x)
-
写代码计算:1+2+3+4+…+20 的和
sum = 0 for x in range(1, 21): sum +=x print(sum)
-
写代码计算100以内所有偶数的和
sum = 0 for x in range(0, 101, 2): sum +=x print(sum)
-
写代码统计100~200中个位数是3的数的个数
count = 0 for x in range(103, 201, 10): count += 1 print(count)
-
写代码计算
2*3*4*5*...*9
的结果result = 1 for x in range(2, 10): result *= x print(result)
-
输入一个数,如果输入的数是偶数就打印
偶数
否则打印奇数
num = int(input('请输入一个数:')) if num % 2: print('奇数') else: print('偶数')
-
统计1000以内能被3整除但是不能被5整除的数的个数。
count = 0 for x in range(0, 1001, 3): if x % 5 != 0: count += 1 print(count)