600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > python基础之数据类型输入输出进制转换运算符表达式随机数

python基础之数据类型输入输出进制转换运算符表达式随机数

时间:2024-01-22 08:50:56

相关推荐

python基础之数据类型输入输出进制转换运算符表达式随机数

python 基础二

@ Python基本数据类型、输入输出、进制转换、运算符、表达式、if语句、随机数

1.python基本数据类型

"""strint float complex bool list dict tuple set bytes None字符串 整型 浮点型 复数 布尔型 列表 字典 元组 集合 字节 空值"""

2.输入输出

print(values,sep,end,file,flush)

values:表示要输出的数据,可以是0个,可以是1个或者多个sep:分隔符,默认为空格,可以将多个数据分隔展示到控制台上,可以进行自定义end:结束符,默认为\n,如果阻止换行,可以自定义file:文件,默认为sys.stdout,sys.stdout表示标准输出,当进行print的时候,

结果默认输出到控制台,可以自定义flush:刷新,不断刷新缓冲区,目的为了提高数据读写的效率

# 1.values# a.省略values,则print()表示换行print("start")print()print("over")# b.1个print("ahjga")print(129)s1 = "结果是:%s" % ("good")print(s1)"""ahjga129结果是:good"""# c.多个,输出的结果默认使用空格分隔print("abc","xyz",10,30)print("结果是:%s" % ("good"),"结果是:%s" % ("good"))"""abc xyz 10 30结果是:good 结果是:good"""# 2.sep,注意:只针对同一个printprint("abc","xyz",10,30)print("abc","xyz",10,30,sep=" ")print("abc","xyz",10,30,sep="%%%%")"""abc xyz 10 30abc xyz 10 30abc%%%%xyz%%%%10%%%%30"""# 3.end,注意:针对的是多个printprint("abc","xyz",10,30)print("abc","xyz",10,30,end="\n")print("abc","xyz",10,30,end="*")print("helgajhg",end="")"""abc xyz 10 30abc xyz 10 30abc xyz 10 30*helgajhg"""# 4.file # 重定向:将原本默认输出的位置做出修改print("hello~~1111")print("hello~~~222",file=sys.stdout)"""数据从磁盘---》内存 读取数据从内存----》磁盘 写入读写文件的步骤a.打开文件b.读/写内容c.关闭文件注意:读取文件,则文件必须存在,写入,文件可以不存在,在写入的过程中可以自动创建"""f = open("file1.txt","w",encoding="gbk")print("hello~~~3333发货结构化宽高和",file=f,flush=True) # flush=True表示开启刷新f.close()

input的工作原理:当程序在运行的过程中,遇到了input功能,则程序会阻塞,等待用户的输入,当用户输入指定的内容,然后按下enter键,则解除阻塞,代码会继续向下执行

input(x),x可以省略,x也可以是任意类型的数据,但是,为了用户的体验度,尽量给出用于提示的字符串从控制台输入的数据,获取到代码中,可以用变量接出来注意:不管从控制台输入什么数据,在程序中获取到的都是一个字符串

# 【problem】假设人的最长寿命为120岁,从控制台输入自己的年龄,并计算剩余寿命max_age = 120age = input("请输入你的年龄:")# 校验年龄,范围为0~120# 校验是否是数字,age.isdigit()判断age是否是由全数字组成的,如果是则结果为Trueif age.isdigit():age = int(age) # 先将age转化为整型,然后给age重新赋值# 校验范围,因为range()取值是左闭右开的区间,因此为了防止忘记直接在需要的测试值上加一if age in range(0,120+1): #方式一:0 <= age <= 120 方式二:age >= 0 and age <= 120print("剩余寿命为:%d" % (max_age - age))else:print("活不到这么大的年纪哈")else:print("输入有误")

3.进制转换

# 一、二进制,八进制,十进制和十六进制在Python中都可以表示# 1.二进制# 表示方式:用0b开头,b:binn1 = 0b1010print(n1)# 2.八进制# 表示方式:用0o开头,o:octn2 = 0o226print(n2)# 3.十进制n3 = 10print(n3)# 4.十六进制# 表示方式:用0x,x:hexn4 = 0x96print(n4)####################### 1.bin/oct/hex(x),将x转换为二进制/八进制/十六进制m = 10print(bin(m))print(oct(m))print(hex(m))"""0b10100o120xa"""# 2.int(x,base),base表示进制,默认为10,也可以自定义为2,8,16,可以实现二/八/十六进制转换成十进制print(int("110"))print(int("110",base=10))print(int("110",10))print(int("110",base=2))print(int("110",base=8))print(int("110",base=16))"""110110110672272"""# 【problem】print(int("0b1102",base=16))# 11*16^4+1*16^3 + 1*16^2 +0 *16^1 +2*16^0 =725250print(11*16**4+16**3+16**2+2)"""725250725250"""

4.运算符

算数运算符

"""+ - * / // % **加 减 乘 除 取整 取余 幂(指)函数优先级关系: ** > * / % // > + -int:整数float:浮点数注意:在算术运算符的+ - *中,当整数和浮点数进行运算时,都会进行类型的提升,得到的结果是浮点数工作原理:0.3 + 7----》0.3 + 7.0---》7.35 * 0.4----》5.0 * 0.4 = 2.0 """# 1./# 注意:在算术运算符的/中,计算的结果为浮点数print(x / y)print(10 / 2)"""1.66666666666666675.0"""# 2.%:求余print(x % y)print(10 % 2)"""20"""# 3.//:取整print(x // y)print(10 // 2)"""15"""# 注意:在算术运算符的% //中,计算的结果为整数

赋值运算符

"""=简单赋值运算符+=、-=、*=、/=、%=、//=、**=等复合赋值运算符"""# 简单赋值运算符:=# 复合赋值运算符:简单赋值运算符和算术运算符的结合# 1.=# 作用:给变量赋值,工作原理:先运算=的右边,然后给左边的变量进行赋值x = 10y = 50# x = (y = x + 1)x = (y == x + 1)print(x)# 2.复合赋值# 作用:先进行算术运算,然后将运算的结果赋值给变量m = 6print(m)m += 4 # 工作原理:m = m + 4print(m)n = 3n **= 2print(n)"""应用:如果需要对变量自身进行算术运算,并且需要给当前变量重新赋值,则可以使用复合赋值运算符"""

关系运算符

"""==!= >< >= <=相等 不相等 大于 小于 大于等于 小于等于# 应用场景:比较运算符一般用于条件判断,结合if语句或者while循环使用较多# 注意:算术运算符和比较运算符运算完之后都会得到一个运算结果,可以给变量赋值,# 但是赋值运算符运算完没有结果,不能用于给变量赋值# 注意区分=(赋值)和==(比较) """a = 1b = 100print(a == b)print(a != b)print(a > b)print(a >= b)

位运算符

""""& | ^~ << >>与 或 异或 取反 左移 右移"""# 与print(6 & 2)print(6 & 3)print(8 & 3)# 或print(6 | 2)print(8 | 3)# 异或print(6 ^ 3 ^ 3)# 需求:交换数,数字电路的异或逻辑运算a = 10b = 20a = a ^ b # a = 10 ^ 20b = a ^ b # b = 10 ^ 20 ^ 20a = a ^ b # a = 10 ^ 20 ^ 10print(a,b)# 取反print(~6)print(~-6)# 左移和右移print(6 << 2)print(8 << 3)print(8 >> 3)print(-6 >> 3)"""'''and:都为真,取后值都为假,取前值一真一假取假值or:都为真,取前值都为假,取后值一真一假取真值执行的顺序:()>not > and >or'''"""

5.if语句

"""a.假:False 0 0.0 "" [] {} Noneb.条件可以由常量,变量或者表达式充当if 表达式:语句当程序执行到if语句时,首先判断“表达式”的值,如果表达式的值为“真”,则执行缩进的语句;如果表达式的值为“假”,则跳过整个if语句继续向下执行"""# a.常量if 1:print("1111")# b.变量a = Trueif a:print("2222")# c.表达式if 3 < 5:print("33333")"""if 表达式:语句1else:语句2当程序执行到if-else语句时,首先判断“表达式”的值,如果表达式的值为“真”,则执行语句1;如果表达式的值为“假”,则执行语句2"""#从控制台输入一个数,判断该数是否是偶数num = int(input("请输入一个数:"))if num % 2 == 0:print("%d是一个偶数" % (num))else:print("%d是一个奇数" % (num))"""if 表达式1:语句1elif 表达式2:语句2elif 表达式3:语句3….elif 表达式n:语句nelse:语句m当程序执行到if-elif语句时,首先计算表达式1的值,如果表达式1的值为真,那么执行语句1,执行完语句1则直接跳出整个if-elif语句,代码继续向下执行;a.在多分支中,不管有多少个条件成立,最终都只会执行一个,按照顺序执行【谁在前面先执行谁】b.当所有的条件都不成立时,则会执行else分支c.else分支根据需求可以选择性的省略"""#用户从控制台输入自己的年龄,根据输入的年龄分阶段age = int(input("请输入年龄:"))if age < 0:print("输入有误")elif age <= 3:print("婴儿")elif age <= 12:print("儿童")elif age <= 18:print("少年")elif age <= 60:print("成年")elif age <= 150:print("老年")else:print("前无古人后无来者")"""if 表达式1:语句1if 表达式2:语句2当表达式1和表达式2的值都为真时,才会执行语句2# 理论上if语句嵌套的层数没有上限,但是,建议嵌套的层数最多三层,否则会降低代码的可读性和可维护性"""

6随机数

"""随机数的获取的流程a.导入模块,import randomb.获取随机数方式一:random.choice(range(start,end,step))start:开始,可以省略,默认为0,如果显式定义则包含在内end:结尾,不能省略,不包含在内step:步长,可以省略,默认为1方式二:random.randint(start,end)start:包含在内end:包含在内random.choice(range())和random.randint只能获取整数随机数"""# 演示随机数的用法# 获取0~99之间的任意一个整数随机数n1 = random.choice(range(0,100,1))n1 = random.choice(range(0,100))n1 = random.choice(range(100))# 获取0~100之间的偶数随机数# 注意:如果未省略step,则start也不能省略# n2 = random.choice(range(100,2)) #IndexError: Cannot choose from an empty空的 sequence序列【容器】n2 = random.choice(range(0,101,2))# 获取0~100之间的奇数随机数n3 = random.choice(range(1,100,2))# 获取20~50之间的整数随机数n4 = random.choice(range(20,50+1))# 注意:step不能为float# n4 = random.choice(range(20,51,0.5)) #TypeError: 'float' object cannot be interpreted as an integer# 注意:randint只有start和end,都不能省略,不能自定义step,步长默认为1# 需求:获取1~100之间的一个整数随机数n5 = random.randint(1,100+1)n51 = random.choice(range(1,100+1))#模拟彩票中奖功能【随机产生一个数,和控制台输入的数进行比较,如果相等则表示中奖】num1 = random.choice(range(100+1))print(num1)num2 = int(input("请输入一个数:"))if num1 == num2:print("恭喜你,中奖了")else:print("谢谢参与")

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。