文章目录
一、Python3 数字
Python数字数据类型用于存储数值,数据类型是不允许改变的,这就意味着如果改变数字的数据类型的值,将重新分配内存空间。
Python3 支持三种不同的数值类型:
- 整型(int):通常被称为整型或整数,是正或负整数,不带小数点。Python3整型是没有限制大小的,可以当做Long类型使用。
- 浮点型(float):浮点型由整数部分和小数部分组成,浮点型也可以使用科学计数法(2.5e2=2.5 x 10^2 = 250)
- 复数 (complex):复数由实数部分和虚数部分构成,可以用a+bj或者complex(a,b)表示,复数的实部a和虚部b都是浮点型。
1、整型的不同进制
| 进制 | 表示方法 | 转换到某进制 |
|---|---|---|
| 2进制 | 0b10 | bin() |
| 8进制 | 0o10 | oct() |
| 10进制 | 10 | int() |
| 16进制 | 0x10 | hex() |
>>> bin(20)
'0b10100'
>>> int(20)
20
>>> oct(20)
'0o24'
>>> hex(20)
'0x14'

2、数据类型的转换
我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。
| 函数 | 作用 |
|---|---|
| int(x) | 将x转换为一个整数 |
| float(x) | 将x转换到一个浮点数 |
| complex(x) | 将x转换到一个复数,实数部分为 x,虚数部分为 0 |
| complex(x, y) | 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式 |
>>> a = 1.1
>>> int(a)
1
>>> a = 1.0
>>> int(a)
1
>>> b = 1
>>> float(b)
1.0
>>> b = 1.123
>>> c = 20
>>> complex(c)
(20+0j)
>>> complex(c,b)
(20+1.123j)
3、数字运算
在解释器里输入一个表达式,它将输出表达式的值。
>>> 2 + 2
4
>>> 50 - 5*6
20
>>> (50 - 5*6) / 4
5.0
>>> 8 / 5 # 总是返回一个浮点数
1.6
>>> 17 / 3 # 整数除法返回浮点型
5.666666666666667
>>>
>>> 17 // 3 # 整数除法返回向下取整后的结果
5
>>> 17 % 3 # %操作符返回除法的余数
2
>>> 5 * 3 + 2
17
>>> 5 ** 2 # 5 的平方
25
>>> 2 ** 7 # 2的7次方
128
// 得到的并不一定是整数类型的数,它与分母分子的数据类型有关系。
>>> 7//2
3
>>> 7.0//2
3.0
>>> 7//2.0
3.0
>>>
不同类型的数混合运算时会将整数转换为浮点数
>>> 3 * 3.75 / 1.5
7.5
>>> 7.0 / 2
3.5
在交互模式中,最后被输出的表达式结果被赋值给变量 _( _ 变量应被用户视为只读变量)
>>> num1 = 9 ** 2
>>> num2 = 1000
>>> num1 * num2
81000
>>> num1 + _
81081
>>> _ * 100
8108100
4、数学函数
5、随机数函数

6、三角函数

7、数字常量

二、Python3 字符串
字符串是Python中最受欢迎、最常用的数据类型。可以通过用单双引号括起字符来创建他们。

1、对字符串的访问
Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。
单字符类型:C或者类似语言的Char类型,char是容纳单字符的一种基本数据类型,不能存储汉字,(一个汉字占2字节)。
(1)拿出最后一个字符
s = 'abcdef'
print ("s[5]: ", s[5])
print ("s[-1]: ", s[-1])
------
s[0]: f
s[-1]: f
(2)设置步长提取字符 s[start:stop:step] 从satrt开始到stop结束、步长为step
- 从下面例子,我们可以看出,
步长为3,则跳过两个字符;步长为2,则跳过1个字符
s = 'abcdef'
print ("s[1:4]: ", s[1:4])
print ("s[0:4:3]: ", s[0:4:3])
print ("s[0:4:2]: ", s[0:4:2])
——————————
s[1:4]: bcd
s[0:4:3]: ad
s[0:4:2]: ac
d = 'abcdefghijklm'
print ("d[0:4:2]: ", d[::2])
----------------
d[0:4:2]: acegikm
(3)显示所有的字符

(4)显示前3个字符

(5)字符串的反转

(6)除了第一个字符之外的其他全部字符

2、字符串运算符

(1)重复
print(s * 2)
-----
abcdefabcdef
(2)连接
s = 'abcdef'
d = 'abcdefghijklm'
print( s + d)
————————————
abcdefabcdefghijklm
(3)成员操作符
print( 'a' in s)
(4)for循环遍历

(5)更新字符串

3、转义字符

(1)\t,表示横向制表符,\v,纵向制表符
>>> print("a\tb\tc")
a b c
(2)\a:响铃,如下内容,执行时系统会有提示音
>>> print("x\ay")
xy
(3)\b:退格,也就是删除键
>>> print("xy\bz")
xz
(4)\r,表示回车

4、字符串格式化
print ("我叫 %s 今年 %d 岁!" % ('小明', 10))
我叫 小明 今年 10 岁!
5、f-string
f-string 是 python3.6 之后版本添加的,称之为字面量格式化字符串,是新的格式化字符串的语法。
f-string 格式化字符串以 f 开头,后面跟着字符串,字符串中的表达式用大括号 {} 包起来,它会将变量或表达式计算后的值替换进去,实例如下:
#以前的
>>> name = 'Runoob'
>>> 'Hello %s' % name
'Hello Runoob'
#f-string
>>> name = 'Runoob'
>>> f'Hello {name}' # 替换变量
>>> f'{1+2}' # 使用表达式
'3'
>>> w = {'name': 'Runoob', 'url': 'www.runoob.com'}
>>> f'{w["name"]}: {w["url"]}'
'Runoob: www.runoob.com'
在 Python 3.8 的版本中可以使用 = 符号来拼接运算表达式与结果:
>>> x = 1
>>> print(f'{x+1}') # Python 3.6
2
>>> x = 1
>>> print(f'{x+1=}') # Python 3.8
'x+1=2'
6、字符串内建函数
(1)判断

(2)判断开头结尾

(3)判断元素
[[:digit:]] 数字
[[:alpha:]] 字母
[[:alnum:]] 字母和数字

>>> print('wertyui12345'.isdigit())
False
>>> print('wertyui12345'.isalnum())
True
>>> print('wertyui12345'.isalpha())
False
(4)转化

(5)去除


(6)对齐

(7)替换

False
>>> s = 'hello world hello'
>>> s
'hello world hello'
>>> print(s.find('hello'))
0
>>> print(s.find('world'))
6
>>> print(s.replace('world','ranran'))
hello ranran hello
>>>
(8)统计


(9)分离和连接

>>> s = '172.25.2.250'
>>> s1 = s.split('.')
>>> s1
['172', '25', '2', '250']
>>> print(s[::-1])
052.2.52.271
>>> print(''.join(s1))
172252250
>>> print(' '.join(s1))
172 25 2 250
>>> print(' '.join(s1[::-1]))
250 2 25 172
三、练习
1 、变量名是否合法

法一:
Name = str(input('请输入变量名:'))
if Name == 'exit':
print('exit')
exit()
if Name[0].isdigit() or Name[0] != '_':
print('变量名格式不正确!!!')
exit()
else:
for i in Name[1:]:
if not (i.isalnum() or i == '_'):
print('变量名格式不正确!!!')
exit()
else:
print('变量名格式正确')
输出:
请输入变量名:_RANRAN
变量名格式正确
2、 输入 hello xiao mi 输出 mi xiao hello

Input = str((input(''))).split(' ')
print(' '.join(Input[::-1]))
——————————
hello xiao mi
mi xiao hello

3、 随机出题练习10内加减

i
4、算术能力测试系统

import random
AllCount = 0
RightCount = 0
for i in range(0,10):
StuAction = int(input('请选择做题(1)/退出(2):'))
num1 = random.randint(1, 100)
num2 = random.randint(1, 100)
if StuAction == 1:
met = random.randint(1, 4)
if met == 1:
AllCount += 1
i += 1
sum = num1 + num2
#print(sum)
print('%d+%d=?' %(num1,num2))
SutAnswer = int(input('请输入答案:'))
if SutAnswer == sum:
print('回答正确')
RightCount += 1
else:
print('回答错误')
if met == 2:
AllCount += 1
i += 1
sum = num1 - num2
#print(sum)
print('%d-%d=?' %(num1,num2))
SutAnswer = int(input('请输入答案:'))
if SutAnswer == sum:
print('回答正确')
RightCount += 1
else:
print('回答错误')
if met == 3:
AllCount += 1
#print(AllCount)
i += 1
sum = num1 * num2
#print(sum)
print('%d*%d=?' %(num1,num2))
SutAnswer = int(input('请输入答案:'))
if SutAnswer == sum:
print('回答正确')
RightCount += 1
else:
print('回答错误')
if met == 4:
AllCount += 1
#print(AllCount)
i += 1
sum = num1 / num2
print(round(sum,2))
print('%d/%d=?' %(num1,num2))
SutAnswer = float(input('请输入精确到小数点后两位的答案:'))
if SutAnswer == round(sum,2):
print('回答正确')
RightCount += 1
else:
print('回答错误')
else:
print('exit')
exit()
本文详细介绍了Python3中的数字类型,包括整型、浮点型和复数,涉及不同进制、数据类型转换、数字运算、数学函数、随机数和三角函数等内容。在字符串部分,讨论了字符串的访问、运算符、转义字符、格式化和内建函数等,并给出了多个练习案例,帮助读者巩固理解。

2389

被折叠的 条评论
为什么被折叠?



