从零开始学Python(2)

Python语言类型

编程语言分为编译型和解释型语言,python 属于解释型语言
我们根据编译器对源码的翻译方式不同,把编译器分成了两种类型一种类型是编译器,一种是解释器。
使用编译器编译的语言我们叫做编译型语言,使用解释器解释的语言叫做解释型语言。
编译型语言执行过程:使用 java 开发完一个只有 3 行代码的程序,然后将这三行代码统一交给编译器进行编译,编译成.class 文件,然后交给操作系统。
当再次执行这个程序的时候,就可以直接拿刚才生成的.class 运行。就不需要再把源码翻译成.class 文件。因为翻译只做了一次,运行的时不要翻译,所以编译型语言的程序执行效率高
解释型语言执行过程:使用 python 开发了一个 3 行代码的源程序,当程序运行的时候一行一行的给解释器,解释器一行一行的进行解释。这样解释性语言每执行一次要翻译一次,效率表较低

混合数字类型自动升级

在混合类型的表达式中, python 首先将被操作的对象(数字)转换成其中最复杂的操作对象(数字)的类型,然后再对相同类型的操作对象(数字)进行数学运算。
python 划分数字类型的复杂度:bool<int<float<complex
在这里插入图片描述

数字类型强制转换

可以通过内置函数对数字类型进行强制转换。
将 int 强制转换成 bool。 0 转换成 False,非零转换成 True。
将 bool 强制转换成 int。False 转换成 0,True 转换成 1。
将 int 转换成 float 。 直接添加一个 0 小数。
将 float 转换成 int。 直接砍掉 小数部分。
float 和 bool 进行转换同 int 和 bool 进行转换。

# 1.int强制转换成bool
print(bool(18))  # True
print(bool(e))  # False
# 2.将bool转换成int
print(int(False))  # 0
print(int(True))  # 1
# 3.float转换成int
print(int(3.64))  # 3   3.64砍掉小数
# 4.int特换成float
print(float(3))  # 3.0
# 5.将bool转换成float
print(float(True))  # 1.0
# 6.float转换成bool
print(bool(3.14))  # True

input() 函数

input() 函数接受一个标准输入数据,返回为 str 类型。
格式:变量 = input()
注意:接受的所有内容都是字符串。

a = input("请输入西红柿单价:")  # input输出的都是字符串  在控制台输入4.4
print(a, type(a))
b = float(a)
print(b, type(b))

# 浮点型字符串不能直接转换成int类型,需要先转换成float类型
# 法一:
c = float(input("请输入西红柿单价:"))
b = int(c)
print(b, type(b))
# 法二:
price = int(float(input("请输入西红柿单价:")))
print(price)
# 整型字符串能直接转换成int类型
number = int(input("请输入人数"))
print(number)

二进制、八进制和十六进制

整数可以编写为十进制(以 10 为基数 )、十六进制(以 16 为基数)、八进制(以
8 为基 )和 二进制(以 2 为基数)形式。
十六进制数以 0x 或者 0x 开头,后面接十六进制的数字 1~9和 A~F 。十六进制
的数字编写成大写或小写都可以。
八进制数常以数 0o 或者0O 开头 (0 和小写或大写字母"O"),后面接着数字 0~7。
二进制以 0b 或者 0B 开头后面只有 0~1。

其他进制转十进制

以十六进制转十进制为例的三种方法:

# 十六进制转十进制的三种方式
print(0x12)  # 18
print(int('12', 16))  # 18
print(int(0x12))  # 18

十进制转其他进制

内置函数 hex(I) oct(I) bin(I)把一 个整数转换为这 3 种进制表示字符串。

# 十进制转二进制
print(bin(57))  # 0b111001
# 十进制转八进制
print(oct(697))  # 0o1271
# 十进制转十六进制
print(hex(239876))  # 0x3a904

字符串类型

使用引号(双引号或者单引号)包裹的内容都是字符串。
在这里插入图片描述

字符串间的操作

1.+ 表示拼接
2.* 表示重复拼接
在这里插入图片描述

类型转换函数

chr()函数:将一个整数转换为一个字符
ord()函数:将一个字符转换成为一个数字

# 对应ACII表
# chr(x ) 将一个整数转换为一个字符
a = chr(65)
print(a)  # A

# ord()函数 将一个字符转换成为一个数字
a = 'A'
b = ord(a)  # 字符转换成ACII数字
print(b)  # 65

从百度上找的str(x )函数: 将对象 x 转换为字符串

a = 4.5
b = str(a)
print(b, type(b))  # 4.5 <class 'str'>

eval(str ) 用来计算在字符串中的有效 python 表达式, 并返回一个对象

a = "1+2"
print(a)  # 1+2
b = eval(a)
print(b)  # 3

算数运算符

  1. 加 +
  2. 减 -
  3. 乘 *
  4. 除 /
  5. 取整除 //
  6. 取余 %
  7. 幂 **
#/ 除
a=10/4
print(a)#2.5
# //得到商
b = 10 // 4
print(b)#2
c = -10 // 4
print(c)  # -3 向下取整
c = -10.0 // 2
print(c)  # -5.0
# %得到余数
b = 5 % 3
# 幂运算
a = 5 ** 3
print(a)

例题:三位数逆序输出

num = int(input("请输入一个三位数"))  # 321
a = num % 10  # 个位
b = num // 10 % 10  # 十位
c = num // 100  # 百位
num2 = a * 100 + b * 10 + c
print(num2)  # 123

复合赋值运算

a=5
a+=3 #a=a+3
print(a)#8

a=5
a-=3 #a=a-3
print(a)#2

a=5
a*=3 #a=a*3
print(a)#15

a=5
a/=3 #a=a/3
print(a)#1.66

a=5
a%=3 #a=a%3
print(a)#2

a=5
a**=3 #a=a**3
print(a)#125

a=5
a//=3 #a=a//3
print(a)#1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值