Python笔记2-数据类型和变量&输入输出

一、数据类型和变量【重点掌握】

1.常用数据类型

顾名思义,计算机就是用来做数学计算的机器,因此,计算机程序理所当然的可以处理各种数值。但是,计算机能处理的远远不止数值,还可以处理文本,图形,音频,视频,网页等各种各样的数据,而处理不同的数据,需要使用不同的数据类型来进行表示

【面试题】列出Python中常用的数据类型,至少5种

数字型:整型【int】,浮点型【float】,复数【complex】

布尔型:bool,只有两个值,True和False

字符串型:str

列表:list

元组:tuple

字典:dict

集合:set

字节:bytes

空值:NoneType ,只有一个值:None

# 1.数字型
# 整型:int
num = 10
print(num)

# 浮点型:float
num1 = 34.435
print(num1)

# 复数:complex
n1 = 3 + 9j
print(n1)

# 2.字符串:str
s1 = 'hello world' \
    '你好!'
print(s1)
s2 = "hello world" \
    "你好!"
print(s2)
s3 = """hello world
你好!"""
print(s3)
s4 = '''hello world
你好!'''
print(s4)

# \n表示换行
s5 = "hello world\n你好!"
print(s5)

# 3.布尔型:bool
# 只有两个值:True和False
b1 = True
print(b1)
b2 = False
print(b2)

#  列表:list              ******
#
#  元组:tuple
#
#  字典:dict              ******
#
#  集合:set
#
# 字节:bytes
#
# 空值:NoneType  ,只有一个值:None


# 扩展1:type(x):获取x的数据类型
print(type(num))  # <class 'int'>
print(type(num1))  # <class 'float'>
print(type(n1))  # <class 'complex'>

print(type(s1))  # <class 'str'>
print(type(s4))  # <class 'str'>

print(type(b1))  # <class 'bool'>

# 扩展2:True相当于1,False相当于0,bool类型的数据可以和数字进行运算
print(True + 1)    # 2
print(False + 1)   # 1

2.变量使用

程序在运行的过程中,表示的值可以随时发生改变的标识符

在程序设计中,变量是一种存储数据的载体【容器】

语法:变量名 = 值

说明:变量名其实就是一个标识符

2.1变量定义和使用

# 1.定义单个变量
n = 45

# 2.变量的重新赋值
# 注意:值可以随时发生改变
num1 = 10           # 变量的定义,10被称为是num1的初始值
print(num1)
num1 = "abc"        # 变量的重新赋值
print(num1)

# 3.定义多个变量
# a.定义多个变量,有共同的初始值
# m1 = 10
# m2 = 10
# m3 = 10
m1 = m2 = m3 = 10
print(m1)
print(m3)

# b.定义多个变量,有不同的初始值
# 注意:=左边变量的数据和=右边数据的数量一定要一致
a1,a2,a3 = 10,20,30
print(a1)
print(a3)

# a1,a2,a3 = 10,20   # ValueError: not enough values to unpack (expected 3, got 2)
# a2,a3 = 10,20,30     # ValueError: too many values to unpack (expected 2)

# 4.扩展:打包pack和拆包unpack
# a.pack
m1,m2,*m3 = 14,5,7,8,8,9,'a','faghj','2364'
print(m1,m2,m3)  # 14 5 [7, 8, 8, 9, 'a', 'faghj', '2364']
m1,*m2,m3 = 14,5,7,8,8,9,'a','faghj','2364'
print(m1,m2,m3)  # 14 [5, 7, 8, 8, 9, 'a', 'faghj'] 2364
*m1,m2,m3 = 14,5,7,8,8,9,'a','faghj','2364'
print(m1,m2,m3)  # [14, 5, 7, 8, 8, 9, 'a'] faghj 2364

# SyntaxError:基本语法错误
# *m1,*m2,m3 = 14,5,7,8,8,9,'a','faghj','2364'

# b.unpack
a1,*b1,c1,d1 = [14, 5, 7, 8, 8, 9, 'a']
print(a1,b1,c1,d1)

a,b = (10,20)
print(a,b)

# 5.扩展:交换两个变量的值   【面试题】
# 方式一:定义第三个变量
x = 15
y = 30
print(x,y)
temp = x
x = y
y = temp
print(x,y)  # 30 15

# 方式二  ********
x = 15
y = 30
print(x,y)
x,y = y,x   # 工作原理:方式一
print(x,y)

# 方式三:加减法
x = 15
y = 30
print(x,y)
x = x + y   # x = 15 + 30
y = x - y   # y = 15 + 30 - 30
x = x - y   # x = 15 + 30 - 15
print(x,y)

# 方式四:异或^
# 原理:一个数异或另一个数两次,结果还是它本身
print(6 ^ 3 ^ 3)  # 6
print(10 ^ 5 ^ 5) # 10

x = 15
y = 30
print(x,y)
x = x ^ y    # x = 15 ^ 30
y = x ^ y    # y = 15 ^ 30 ^ 30  = 15
x = x ^ y    # x = 15 ^ 30 ^ 15  = 30
print(x,y)

# 6.常量
# 值不能发生改变的标识符,但是,在代码中,只是一种标记
# 常量命名法:所有英文字母全部大写,不同单词使用下划线连接
PI = 3.1415
print(PI)

# 注意:只是一种规范,本质还是一个变量
PI = "fhajghj"
print(PI)

2.2删除变量

"""
定义变量:相当于该变量在内存中开辟空间的过程,当程序执行完毕,变量所开辟的空间会自动释放
删除变量:相当于手动释放变量在内存中空间的过程
"""

# 定义变量:变量名  = 值
# 删除变量:del 变量名

stu_name = "张三"
print(stu_name)

# 注意:删除一个变量,则该变量会从内存空间中消失,无法再次访问
del stu_name
# print(stu_name)  # NameError: name 'stu_name' is not defined

2.3变量的类型转换

# 1.int(x):将x转换为整型          *****
# a.float---->int,不涉及四舍五入
print(int(12.96))  # 12
print(int(12.1235364))  # 12

# b.str---->int
# 注意:如果将一个字符串转换为整型,该字符串只能由正负号和数字组成,且正负号只能出现在字符串的开头
s1 = "110"
print(s1,type(s1))
r1 = int(s1)
print(r1,type(r1))
print(110)

# print(int('a110'))  # ValueError: invalid literal for int() with base 10: 'a110'
print(int('+110'))  # 正号
print(int('-110'))  # 负号

# print(int('1+10'))
# print(int('11-0'))

# print(int('23.4565745'))


# 2.float(x):将x转换为浮点型
# a.int---->float
print(float(10))

# b.str---->float
# 注意:如果将字符串转换为浮点型,该字符串只能由数字,正负号和小数点组成,且正负号只能出现在字符串的开头
s1 = "110"
print(s1,type(s1))
r1 = float(s1)
print(r1,type(r1))

print(float("235"))
print(float("235.554"))
print(float(".235"))
print(float("235."))
print(float("+235.355"))
print(float("-235.453"))

# 3.str(x):将x转换为字符串,x可以是任意类型
print(str(354))
print(str(35.56))
print(str(True))

print(3 + 7)  # 数学运算
print('35' + '4637')   # 拼接
print(int('35') + int('4637'))  # # 数学运算

# 4.bool(x):将x转换为布尔型
# 注意:但凡表示 '没有' 的数据,通过bool转换,结果都是False
print(bool(0))
print(bool(0.0))
print(bool(""))

二、输入和输出【重点掌握】

1.输入input

"""
input(xxx),xxx可以省略,但是建议添加,而且以字符串的形式添加,用于表示给用户的提示信息

作用:从外部【控制台】获取数据到程序中
工作原理:当程序在执行的过程中,遇到了input(),程序会进入阻塞状态,
        目的是为了等待用户的输入,当用户输入完成,按下回车键,则会自动解除阻塞,程序会继续向下执行

注意:无论从控制台输入什么内容,通过input获取到程序中,类型都是字符串
"""

# 1.
# print('start')
# input()
# print('end')

# 2.
username = input("请输入你的用户名:")
print("用户名:",username)
print(type(username))  # <class 'str'>

# 3.注意:根据需求,需要输入几个数据,则使用几次input()
# name = input("请输入你的用户名和密码:")
# print('结果:',name)  # 'zhangsan abc123'

2.输出print

# 1.换行
print("start")
print()  # 相当于print(end='\n')
print("end")


# 2.输出单个数据
print('abc')
print(34)
print(False)

# 3.输出多个数据,数据的个数没有限制
print(34,56,6,7,78,8,89,9,'ga','gah',False,4.6,67)

# 4.sep:分隔符,当多个数据打印到控制台上的时候,将多个数据分隔,默认值为空格
print(34,56,6,7,78,8,89,9,'ga','gah',False,4.6,67,sep=' ')
print(34,56,6,7,78,8,89,9,'ga','gah',False,4.6,67,sep='***')


print("*" * 100)

# 5.end:结束符,不管打印1个还是多个数据,都会有一个结束符,默认值为\n
print('hello')
print('hello',end='\n')

print("*" * 100)

print('hello')
print('hello',34,6,7,87,8,98,9,end='~~~~~~')
print('hello')


# 练习:
# 1.输出三个数据,用=隔开
a = 10
b = 20
c = 45
print(a,b,c,sep='=')

# 2.从控制台输入用户名和密码,以指定的格式输出
# username = input("请输入你的用户名:")
# pwd = input("请输入你的密码:")
# print("用户名:",username,'密码:',pwd)

# 3.从控制台输入用户的年龄,假设最长寿命为150岁,计算剩余寿命
# 错误写法
# age = input("请输入你的年龄:")
# print(150 - age)

# 方式一
age = input("请输入你的年龄:")
print(150 - int(age))

# 方式二
age = int(input("请输入你的年龄:"))
print(150 - age)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值