Python零基础学习笔记(二)数据类型、输入函数、运算符

声明:

(1)该学习笔记是根据B站“Python_子木”分享的杨淑娟老师授课的“马士兵Python入门基础版”所整理的。该系列笔记适合初学Python的同学,仅供学习交流。                                                

(2)博主是零基础的Python初学者,撰写笔记是为了更好复盘所学内容。如有错误还望大佬们多多指点,不胜感激!

目录

一、Python中常见的数据类型

1. 整数类型

2. 浮点类型

3.布尔类型

4. 字符串类型

二、数据类型转换

三、输入函数input()

1. input函数的基本使用

2. input函数的高级使用

四、Python中的运算符

1. 算术运算符

2. 赋值运算符

3. 比较运算符

4. 布尔运算符

5. 位运算符

6. 运算符的优先级


一、Python中常见的数据类型

1. 整数类型

        英文为integer,简写为int,可以表示正数、负数和零。

        整数的不同进制表示方式:十进制——默认的进制、二进制——以0b开头、八进制——以0o开头、十六进制——以0x开头。

n1=90
n2=-76
n3=0
print(n1,type(n1))
print(n2,type(n2))
print(n3,type(n3))
#整数可以表示为十进制、二进制、八进制、十六进制
print('十进制',118)
print('二进制',0b0011100011)#二进制以0b开头
print('八进制',0o157)#八进制以0b开头
print('十六进制',0x1EAF)#十六进制以0x开头

2. 浮点类型

        浮点数float由整数部分和小数部分组成。浮点数的存储具有不精确性。使用浮点数进行计算时,可能会出现小数点位数不确定的情况。当存在误差时需要导入模块Decimal进行矫型。注意需要Decimal首字母大写以及数据加引号。

n1=1.1
n2=2.2
n3=2.1
print(n1+n2)
print(n1+n3)
#导入decimal模块
from decimal import Decimal
print(Decimal('1.1')+Decimal('2.2'))

3.布尔类型

        布尔boolean简称bool,用以表示真或假的值。True表示真,False表示假。布尔值可以转换为整数,True——1、False——0

f1=True
f2=False
print(f1,type(f1))
print(f2,type(f2))

#布尔值可以转成整数计算
print(f1+1)
print(f2+1)

4. 字符串类型

        字符串又被称为不可变的字符序列,可以使用单引号‘’、双引号'' ''、三引号''' '''或'''' ''''来定义。单引号和双引号定义的字符串必须在一行,三引号定义的字符串可以分布在连续的多行。

str1='人生苦短,我用python'
str2="人生苦短,我用python"
str3='''人生苦短,
我用python'''
str4="""人生苦短,
我用python"""
print(str1,type(str1))
print(str2,type(str2))
print(str3,type(str3))
print(str4,type(str4))

二、数据类型转换

        为什么需要数据类型转换?——将不同数据类型的数据拼接在一起。

数据类型转换的函数
函数名 作用 注意事项 举例
str() 将其他数据类型转成字符串 也可以用引号转换

str(123)‘123’

int() 将其他数据类型转成整数

(1)文字类和小数字类字符串无法转成整数;

(2)浮点数转化成整数要抹零取整

int('123')

int(9.8)

float() 将其他数据类型转成浮点数

(1)文字类无法转成整数;

(2)整数转成浮点数末尾为.0

float('9.9')

float(9)

#转换成str类型
a=10
b=198.8
c=False
print(type(a),type(b),type(c))
print(str(a),str(b),str(c),type(str(a)),type(str(b)),type(str(c)))

#转换成int类型
s1='128'
f1=98.7
s2='76.77'
ff=True
s3='hello'
print(type(s1),type(f1),type(s2),type(ff),type(s3))
print(int(s1),type(int(s1)))
print(int(f1),type(int(f1)))
#print(int(s2),type(int(s2))) 文字类和小数类字符串不能转换为整数
print(int(ff),type(int(ff)))
#print(int(s3),type(int(s3)))

#转换成float类型
s1='128.8'
s2='76'
ff=True
s3='hello'
i=98
print(type(s1),type(s2),type(ff),type(s3),type(i))
print(float(s1),type(float(s1)))
print(float(s2),type(float(s2)))
print(float(ff),type(float(ff)))
#print(float(s3),type(float(s3))) 字符串中的数据如果是非数字串,则不能转换成float类型
print(float(i),type(float(i)))

三、输入函数input()

        作用:接收来自用户的输入;

        返回值类型:输入类型为str;

        值的存储:适应“=”对输入值进行存储。

1. input函数的基本使用

present=input('请输入愿望清单:')
print(present,type(present))

        present是变量。“=”是赋值运算符,将输入函数的结果赋值给变量present。input()函数是一个输入函数,需要输入回答。

2. input函数的高级使用

#从用户处录入两个整数,计算两个整数的和
a=int(input('请输入一个整数:'))
b=int(input('请输入另一个整数:'))
print(type(a),type(b))
print(a+b)

        若不将数据类型转换为整数类型,会发现a+b的运算是起了一个连接作用,这是因为原本的数据类型为str类型,无法进行运算。

四、Python中的运算符

        常用运算符:算术运算符(包含标准算数运算符、取余运算符、幂运算符)、赋值运算符、比较运算符、布尔运算符、位运算符

1. 算术运算符

(1)标准运算符:加+、减-、乘*、除/、整除//;

(2)取余运算符:%

(3)幂运算符:**

        算式中出现一正一负的情况:取余时遇到一正一负需要用到余数=被除数-除数*商,整除时遇到一正一负向下取整。

print(1+1)
print(2-1)
print(2*3)
print(6/3)
print(11//2)
print(11%2)
print(2**3)

#算式中一正一负的情况
print(9//4)
print(9//-4)
print(-9//4)
print(9%-4)#余数=被除数-除数/商,9-(-4)*(-3)=-3
print(-9%4)#-9-4*(-3)=3

2. 赋值运算符

(1)执行顺序:从右到左;

(2)支持链式赋值(同一个对象赋值给多个对象):a=b=c=20;

(3)支持参数赋值:+=、-=、*=、/=、//=、%=;

(4)支持解包赋值:a,b,c=20,30,40。

#链式赋值
a=b=c=20
print(a,id(a))
print(b,id(b))
print(c,id(c))

#参数赋值
a=20
a+=30  #a=a+20
print(a)
a-=10  #a=a-10
print(a)
a*=2  #a=a*2
print(a)
print(type(a))
a/=3  #a=a/3
print(a)
print(type(a))
a//=2  #a=a//2
print(a)
a%=3  #a=a%3
print(a)

#系列解包赋值
a,b,c=20,30,40
print(a,b,c)

3. 比较运算符

        比较运算符是指对变量或表达式的结果进行大小、真假等比较,其结果是布尔类型(True/False)。

(1)>,<,>=,<=,!=;

(2)==(对象value的比较);

(3)is, not is(对象id的比较)。

a,b=10,20
print('a>b?',a>b)
print('a<b?',a<b)
print('a<=b?',a<=b)
print('a>=b?',a>=b)
print('a不等于b?',a!=b)
print('a与b的值相等吗?',a==b)
print('a和b的id相等吗?',a is b)
print('a和b的id不相等吗?',a is not b)

4. 布尔运算符

        布尔运算:and、or、not、in、not in,是对于布尔值之间的运算。

(1)and(并且):两真才真,一假就假;

(2)or(或者):两假才加,一真就真;

(3)not(对运算数取反):一真就假,一假则真,真假相对;

(4)in(在这个当中)与not in(不在这个当中)。

a,b=1,2
#and并且,两真才真,一假就假
print(a==1 and b==2)
print(a!=1 and b==2)
print(a==1 and b!=2)
print(a!=1 and b!=2)
#or或者,两假才真,一真就真
print(a==1 or b==2)
print(a!=1 or b==2)
print(a==1 or b!=2)
print(a!=1 or b!=2)
#not对运算数取反
f=True
f1=False
print(not f)
print(not f1)

5. 位运算符

        位运算是将数据转成二进制的运算。

(1)位与&:对应数位都是1,结果数位才是1,否则为0;

(2)位或|:对应数位都是0,结果数位才是0,否则为1;

(3)左移位运算符<<:高位溢出舍弃,低位补0;

(4)右移位运算符>>:低位溢出舍弃,高位补0。

#位与&,同为1时结果为1,其余为0,十进制转换为二进制上来对比
print(4&8)
#位或|,同为0时,结果为0,其余为1
print(4|8)
#左移位运算符,高位溢出舍弃,低位补0
print(4<<1)  #左移一位相当于每乘2
print(4<<2)
#右移位运算符,低位溢出舍弃,高位补0
print(4>>1)  #右移一位相当于每除2
print(4>>2)

6. 运算符的优先级

        第一优先——算术运算:(1)**(2)*,/,//,%(3)+,-;

        第二优先——位运算:(1)<<,>>(2)&(3)|;

        第三优先——比较运算:(1)>,<,>=,<=,==,!=;

        第四优先——布尔运算:(1)and(2)or;

        第五优先——赋值运算:=

猜你喜欢

转载自blog.csdn.net/qq_49291059/article/details/126173358