作者:VW旻shi只吃货8453 | 来源:互联网 | 2023-09-04 20:07
初识基本数据类型什么是数据类型?在现实生活中存储数据的方式和表现形式有很多。eg:文本文件表格文件视频文件音频文件图片文件在IT世界里数据的存储方式和表现形式也是千变万
初识基本数据类型
与用户交互
获取用户输入
inp_name = input("请输入您的用户名:")
'''
将input获取到的用户输入绑定给变量名inp_name
input获取到的用户输入全部都会转成字符串
'''
print(inp_name,type(inp_name)) # geng
# 案例:
inp_name = input("请输入您的用户名:") # inp_name = "geng"
inp_pwd = input("请输入您的密码:") # inp_pwd = "123"
格式化输出
print() # 输出
'''
1.括号可以使用逗号隔开多个元素一起打印
2.自带end参数 可以控制打印的排版
'''
print("1111",end='')
print("2222")
# 输出结果:11112222
# 将字符串中某些内容替换掉再输出就是格式化输出
"""
1.先使用占位符占位 %s
2.再使用%按照位置一一替换
"""
# 示例:
name = input("your name: ")
age = input("your age: ")
print("my name is %s my age is %s" % (name,age))
# 输出结果:my name is geng my age is 18
print("my name is %s my age is %d" % ("jack",19))
# 输出结果:my name is jack my age is 19
# %d 只能接收数字(了解)
print("my name is %s my age is %d" % ("jack","19")) # 报错
print("my name is %s my age is %s" % ("jack",[1,2,3]))
# 输出结果:my name is jack my age is [1, 2, 3]
基本运算符
1、算术运算符
python支持的算术运算符与数学上计算的符号使用是一致的
算数运算符 |
描述 |
---|
+ |
加,两个对象相加 |
- |
减,两个对象相减 |
* |
乘,两个对象相乘 |
/ |
除,相除后得到的返回值会保留整数与小数部分 |
// |
取整除,相除后得到的返回值只保留整数部分 |
% |
取余,相除后只返回余数 |
** |
幂,取一个数的n次方 |
salary = 3.3
res = salary * 12
print(10 + 1) # 11
print(10 / 3) # 3.3333333333333335
print(10 // 3) # 3
print(10 % 3) # 1000
print(10 ** 3) # 1000,10的3次方
print(10 + 3.1)
print(10 % 3)
# ps:整型和浮点型可以混着计算
2、比较运算符
比较运算用来对两个值进行比较,返回的是布尔值True或False
比较运算符 |
描述 |
---|
== |
等于,两个对象相等返回True,否则返回False |
!= |
感叹号等于,两个对象相等返回False,否则返回True |
> |
大于 |
>= |
大于等于 |
< |
小于 |
<= |
小于等于 |
x = 10 # int
y = 10.0 # float
# 整型和浮点型比较
print(x == y) # True
m = 10 # int
n = "10" # str
# 仅限同类型
print(m == n) # False
# == 不限类型
print(10 == [1,2,3]) # False
print(10 + [1,2,3]) # 报错
print(10 == [1,2,3]) # False
print(10 != [1,2,3]) # True
print(10 > 3.1) # True
print(10 >= 3.1) # True
print(10 <= 3.1) # False
print(10 <3.1) # False
3、赋值运算符
python语法中除了有=号这种简单的赋值运算外,还支持增量赋值、链式赋值、交叉赋值、
解压赋值,这些赋值运算符存在的意义都是为了让我们的代码看起来更加精简
复制运算符 |
描述 |
---|
= |
简单赋值运算 |
+= |
加法赋值运算 |
-= |
减法赋值运算 |
*= |
乘法赋值运算 |
/= |
除法赋值运算 |
//= |
取整赋值运算 |
%= |
取余赋值运算 |
**= |
幂赋值运算 |
age = 18 # 简单赋值运算
age += 10 # age = age + 10 加法赋值运算
print(age) # 28
age *= 10 # 乘法赋值运算
print(age) # 180
age %= 3 # age = age % 3 取余赋值运算
print(age) # 0
链式赋值
如果我们想把同一个值同时赋值给多个变量名,可以这么做
x = 10
y = x
z = y
# 链式赋值指的是可以用一行代码搞定这件事
x = y = z = 10
print(x, y, z)
print(id(x), id(y), id(z))
交叉赋值
我们定义两个变量m与n,如果我们将m与n的值交换过来
m = 10
n = 20
# 方式一:利用中间变量
temp = m
m = n
n = temp
print(m, n) # 20 10
# 方式二:交叉赋值指的是一行代码可以搞定这件事
m, n = n, m
print(m, n) # 20 10
解压赋值
如果我们想把列表中的多个值取出来一次赋值给多个变量名,可以这么做
salaries = [11, 22, 33, 44, 55]
mon1 = salaries[0]
mon2 = salaries[1]
mon3 = salaries[2]
mon4 = salaries[3]
mon5 = salaries[4]
# 解压赋值:左右两边个数相等
mon1, mon2, mon3, mon4, mon5 = salaries
# 变量名变少了
mon1, mon2, mon3, mon4 = salaries # 错误
# 变量名变多了
mon1, mon2, mon3, mon4, mon5, mon6= salaries # 错误
# 如果只想取前面的几个值,可以用*_匹配
mon1, mon2, mon3, *_ = salaries
print(mon1) # 11
print(mon2) # 22
print(mon3) # 33
print(_) # [44, 55]
# 取倒数两个值
*_, last2, last1 = salaries
print(last1) # 55
print(last2) # 44
print(_) # [11, 22, 33]
# 取前一个以及后两个值
mon1,*_,last2,last1=salaries
print(mon1) # 11
print(last1) # 55
print(last2) # 44
# 如果想取中间的值,*加middle
_,*middle,_=salaries
print(middle) # [22, 33, 44]
print(_) # 55
4、逻辑运算符
逻辑运算符用于连接多个条件,进行关联判断,会返回布尔值True或False
5、成员运算
```python
name_list = ['jason', 'kevin', 'tony', 'jackson']
name = input('请输入您要查询的学生姓名>>>:')
# print(name in name_list)
# print(name not in name_list)
# print('j' in 'jason j j j n n')
print('jason' in {'username': 'jason', 'age': 18}) # False
# 字典默认暴露给外界的只有K
print('username' in {'username': 'jason', 'age': 18})
```
6、身份运算
注意:
(1)如果内存地址(id)相等,意味着 type(类型) 和 value(值)必定相等
x = 1000
y = x
print(x is y)
(2)value (值)相等 type(类型)肯定相等,但内存地址(id)不一定相等
C:\Users\oldboy>python3
Python 3.8.6 (tags/v3.8.6:db45529, Sep 23 2020, 15:52:53) [MSC
v.1927 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more
information.
>>> x=1000
>>> y=1000
>>> id(x)x
2577369562032
>>> id(y)
2577369562096
>>>
>>> x is y
False
>>> x == y
True
>>>
补充了解:布尔值分为两大类
1、显式的布尔值:能明确地得到True或False,比如x=True,10 > 3, 10 > 3 and 1==1
3 == 1 and True and 10 > 3
print(3 == 1 and True and 10 > 3) # False
2、隐式的布尔值:所有的数据类型的值都可以当作隐式的布尔值,其中0、None、空对应隐式布尔值为False,其余对应隐式布尔值为True
复制10 and 3 and 4 > 2
print(10 and 3 and 4 > 2) # True
print(10 and 0 and 4 > 2) # 0
print(0 and 2 or 1) # 1