"""
我是多行注释
本代码XXXX
"""
print("niuma")
# 我是单行注释【#开头 建议空一个格 再写注释内容】
print(666)
# 格式:变量名=变量值
# 定义一个变量,用来记录钱包余额
money = 50
# 通过print语句,输出变量记录的内容
print("钱包还有:",money)
money=money-10
print("买了冰淇淋花费10元,还剩余:",money,"元")
# 假设,每间隔一小时,输出一下钱包的余额
print("现在是下午1点,钱包余额剩余:",money)
print("现在是下午2点,钱包余额剩余:",money)
print("现在是下午3点,钱包余额剩余:",money)
print("现在是下午4点,钱包余额剩余:",money)
1.对着某行代码 打断点
2.下方一步步 步进
# 方式1:使用print直接输出类型信息
print(type("niuma"))
print(type(666))
print(type(11.111))
# 方式2:使用变量存储type()语句的结果
string_type=type("黑马")
int_type=type(666)
float_type=type(11.1111)
print(string_type)
print(int_type)
print(float_type)
# 方式3: 使用type()语句,查看变量中存储的数据类型信息
name="heima niuma"
name_type=type(name)
print(name_type)
# 数字转字符串
num_str=str(11)
print(type(num_str),num_str)
float_str=str(11.345)
print(type(float_str),float_str)
# -------------------------------------
# 字符串转数字
num=int("2222")
print(type(num),num)
num2=float("11.345")
print(type(num2),num2)
# 错误示例,想要将字符串转换成数字,必须要求字符串内的内容都是数字
# num3 =int("niuma zhongjiurong")
# print(type(num3),num3)
# 整数转浮点数
float_num=float(11)
print(type(float_num),float_num)
# 浮点数转整数[丢失精度] 转换的结果只有整数部分:11
int_num=int(11.345)
print(type(int_num),int_num)
# 错误示例,想要将字符串转换成数字,必须要求字符串内的内容都是数字
num3 =int("niuma zhongjiurong")
print(type(num3),num3)
变量的命名规范:
1.见名知意,简洁;
2.(多个单词)用下划线命名法
3.英文字母全小写
# 规则1:内容限定,只能使用中文,英文,数字,下划线
# 注意:不能以数字开头
# 错误的代码示范:name_!="张三"
# 规则2:大小写敏感
A="zhangsan1"
a="zhangsan2"
# 规则3:不可使用关键字 False True None class 等
# 错误的代码示范:def=1
Class=1
# 算术(数学)运算符
print("1+1=",1+1)# 加
print("2-1=",1+1)# 减
print("3*3=",3*3)# 乘
print("4/2=",4/2)# 除
print("11//2=",11//2)# 取整除
print("9%2=",9%2)# 取余
print("2**3=",2**3)# 指数
# 赋值运算符
num=1+2*3
# 复合赋值运算符
# +=
num=1
num+=1 # num=num+1
print("num+=1:",num)
num-=1 # num=num-1
print("num-=1:",num)
num*=4
print("num*=4:",num)
num/=2
print("num/=2:",num)
num=3
num%=2
print("num%=2:",num)
num**=2
print("num**=2:",num)
num=9
num//=2
print("num//=2:",num)
# 单引号定义法
name='niuma'
print(type(name))
# 双引号定义法
name="niuma zhong"
print(type(name))
# 三引号定义法 写法与多行注释一样
name="""
niuma zhongjiur
"""
print(type(name))
# 注意:用变量接收它,就是字符串
# 若不适用变量接收它,它就是多行注释
# 在字符串内包含双引号
name='"niuma"'
print(name)
# 在字符串内包含单引号
name="'niuma'"
print(name)
# 使用转义字符 \ 解除引号的效用
name="\"niuma\""
print(name)
name='\'niuma\''
print(name)
# 字符串字面量之间的拼接
print("学IT来黑马"+"月兴过完")
# 字符串字面量和字符串变量的拼接
name="niuma"
address="jiangxi"
tel=40000008888
print("我是:"+name+",我的地址是:"+address+",my 电话是:"+tel)# 目前数字无法进行拼接
name="niuma"
message="nimmmmm:%s"% name
print(message)
# 通过占位的形式,完成数字和字符串的拼接
class_num =57
avg_salary=16781
message="python niuma ,北京%s期,毕业平均工资:%s"%(class_num,avg_salary)
print(message)
name="船只博客"
setup_year=2006
stock_price=19.99
message="%s,成立于:%d,今天股价是:%f"%(name,setup_year,stock_price)
print(message)
num1=11
num2=11.345
print("数字11宽度限制5,结果是:%5d"%num1)
print("数字11宽度限制1,结果是:%1d"%num1)
print("数字11.345宽度限制7,小数精度2,结果是:%7.2f"%num2)
print("数字11.345宽度不限制,小数精度2,结果是:%.2f"%num2)
name="江西财大"
set_up_yaer=1923
scale=2200.999999
jianjie='江西财经大学是一所财政部、教育部、江西省人民政府共建,以经济、管理类学科为主,法、工、文、理、艺术等学科协调发展的高等财经学府'
zongli_say="你们学校是所很好的学校"
zongli_name="温家宝"
# f:format
print(f"这里是{name},成立于:{set_up_yaer}年,占地面积:{scale}")
print(f"{jianjie}")
print(f"2008年2月,国务院总理{zongli_name}说:{zongli_say}")
print("1*1的结果是:%d"%(1*1))
print(f"1*2的结果是:{1*2}")
print("字符串在python中的类型名是:%s"%type("字符串"))
name="传智播客"
stock_code="003032"
stock_price=19.99
print(f"公司:{name},股票代码:{stock_code},当前股价:{stock_price}")
stock_price_daily_growth_facter=1.2
growth_days=7
finnal_price=stock_price*stock_price_daily_growth_facter**growth_days
print("每日增长系数是:%.1f,经过%d天的增长后,股票达到了:%.2f"%(stock_price_daily_growth_facter,growth_days,finnal_price))
name=input("你是谁?")# 给出提示信息,并用name接收【免去在前面写print手动提示】
print("我知道了,你是:%s"%name)
# 输入数字类型
num=input("请告诉我你的学号:")# input默认接收 成为字符串,哪怕是数字也会自动转为字符串
# 数据类型转换
num=int(num)# 需要数字类型,得自行进行类型转换
print("学号类型是:",type(num))
user_name=input("请您输入用户名")
user_type=input("请您输入您的用户级别")
# 使用%占位符的方式输出
# print("您好:%s,您是尊贵的:%s用户,欢迎您的光临。"%(user_name,user_type))
# 使用f"{变量}"的方式输出
print(f"您好:{user_name},您是尊贵的:{user_type}用户,欢迎您的光临。")
# 定义变量存储布尔类型的数据
bool_1=True
bool_2=False
print(f"bool_1变量的内容是:{bool_1},类型是:{type(bool_1)}")
print(f"bool_2变量的内容是:{bool_2},类型是:{type(bool_2)}")
# 比较运算符的使用
# ==,!=,>,<, >=, <= 注意:两个等号
# 演示进行内容的相等比较
num1=10
num2=10
print(f"10==10的结果是,{num1==num2}")
num1=10
num2=15
print(f"10!=15的结果是:{num1!=num2}")
name1="ittest"
name2="niuma"
print(f"ittest==niuma的结果是:{name1==name2}")
#演示 大于小于,大于等于,小于等于的比较运算
num1=10
num2=5
print(f"10>5的结果是:{num1>num2}")
print(f"10<5的结果是:{num1<num2}")
num1=10
num2=10
print(f"10>=10的结果是:{num1>=num2}")
print(f"10<=10的结果是:{num1<=num2}")
num1=10
num2=11
print(f"10<=11的结果是:{num1<=num2}")
print(f"10>=11的结果是:{num1>=num2}")
age=20
if age>=18: # 不需要括号,需要冒号
print("我已经成年了")# 因归属于if的代码块,语句前需要 四个空格缩进
print("步入大学生活")# 因归属于if的代码块,语句前需要 四个空格缩进
print("niumama")# 不归属if代码块,则不需要四个空格缩进,且会自动输出(无条件)
#age=input("请您输入年龄")# 获取键盘输入
#age=int(age)# 数据类型转换
age=float(input("请您输入年龄"))# 简化[获取输入+数据类型转换放在一起],注意使用float类型更佳
if age>=18:
print("欢迎来到黑马儿童游乐园,儿童免费,成人收费。")
print(f"您输入的年龄是:{age}")
print("您已成年,游玩需要补票10元。")
print("祝您游玩愉快。")
age=int(input("请输入你的年龄:"))
if age>=18:
print("您已成年,需要买票10元。")
else:
print("您未成年,玩吧,你免费的。")
print("游玩愉快哦!")
high=float(input("请输入您的身高(cm)"))
print("欢迎来到黑马动物园。")
if high>=120:
print("您的身高超出120cm,游玩需要购票10元。")
else:
print("您的身高未超出120cm,可以免费游玩。")
print("祝您游玩愉快。")
if int(input("请输入你的身高(cm):"))<120:
print("身高小于120cm,可以免费。")
elif int(input("请输入你的VIP等级(1-5):"))>3:
print("您是尊贵的VIP用户,级别大于3,可以免费")
elif int(input("请告诉我今天几号:"))==1:
print("今天是1号免费日,可以免费")
else:# else这一套语句 可以省略不写,效果等同于3个独立的if判断
print("不好意思,条件都不满足,需要买票10元。")
# 注意:elif 条件判断是互斥的, 从上至下
num=10
if int(input("请输入你猜想的数字"))==num:
print("恭喜你,你猜对了")
elif int(input("猜错了,再猜一次:"))==num:
print("猜对了")
elif int(input("不对,再猜最后一次:"))==num:
print("猜对了")
else :
print("sorry,全部猜错,我想的是10")
# if int(input("你的身高是多少"))>120:
# print("身高超出限制,不可以免费")
# print("但是,如果VIP级别大于3,可以免费")
#
# if int(input("你的VIP级别是多少:"))>3:
# print("恭喜你,VIP级达标,可以免费")
# else:
# print("sorry 你需要买票10元")
# else:
# print("欢迎小朋友免费游玩")
# python一键注释多行: Ctrl+/
age=14
year=1
level=1
if age>=18:
print("你是成年人")
if age<30:
print("你的年龄达标了")
if year>2:
print("恭喜你,年龄+入职时间都达标,可以领取礼物")
elif level>3:
print("恭喜你,年龄+级别都达标,可以领取礼物")
else:
print("不好意思,尽管年龄达标,但是入职时间和级别都不达标。")
else:
print("不好意思,年龄大了")
else:
print("不好意思,小朋友不可以领取。")
# 1.构建随机的数字变量
import random
num=random.randint(1,10)
guess_num=int(input("输入你要猜的数字"))
# 2.通过if判断语句进行数字的猜测
if guess_num==num:
print("恭喜你,第一次就猜中了")
else:
if guess_num>num:
print("你猜大了")
else:
print("你猜小了")
guess_num = int(input("输入你要猜的数字"))
if guess_num==num:
print("恭喜,第二次猜中!")
else:
if guess_num > num:
print("你猜大了")
else:
print("你猜小了")
guess_num = int(input("输入你要猜的数字"))
if guess_num == num:
print("恭喜,第三次猜中!")
else:
print("三次机会用完了,没有猜中")
# 输出不换行
print("hello",end='')
print("world",end='')
# 制表符\t = tab键
print("haha\tbest")
print("hello\tworld")
i=0
while i<100:
print(f"牛马,{i}")
i+=1
sum=0
i=1
while i<=100:
sum+=i
i+=1
print(f"1-100累加的和是:{sum}")
# 获取范围在1-100的随机数字
import random
num=random.randint(1,100)
# 定义一个变量,记录总共猜测了多少次
count=0
# 通过一个布尔类型的变量,做循环是否继续的标记
flag=True
while flag:
guess_num=int(input("请输入你猜的数字"))
count+=1
if guess_num==num:
print("猜中了")
# 设置为false就是终止循环的条件
flag=False
elif guess_num>num:
print("猜大了")
else:
print("猜小了")
print(f"你总共猜测了{count}次")
# 外层,表白100天的控制
i=1
while i<=100:
print(f"今天是第{i},准备表白。。。。。")
# 内层循环
j=1
while j<=10:
print(f"送给小美的第{j}只玫瑰花")
j+=1
print("小美,我喜欢你")
i+=1
print(f"坚持到第{i-1}天,表白成功")
# 通过while循环输出9*9乘法表
# 定义外层循环
i=1
while i<=9:
# 定义内层循环的控制变量
j=1
while j<=i:
# 不换行,通过\t对齐
print(f"{j}*{i}={j*i}\t",end='')
j+=1
i+=1
print() # print 空内容 ,就是输出一个换行
name="nuimaa a "
for x in name:
# 将 name里的内容,挨个取出,赋予临时变量x
# 就可以在循环体内对x进行处理
print(x)
# 注意:无法定义循环条件, for 变量 in 被处理的数据。
# 注意:循环内的语句,需要有空格缩进!!!
name="itheima is a brand of itcast"
sum=0 # 定义一个变量来统计有多少个a
for x in name:
if x=="a":
sum+=1
print(sum)
# range 语法1 range(num)
# range(10)# 0-9
# for x in range(10):
# print(x)
# range 语法2 range(num1,num2)
# for x in range(5,10):# 从5开始,到10结束(不含10本身)
# print(x)
# range 语法3 range(num1,num2,step)
# for x in range(5,10,2):# 从5开始,到10结束(不包含10本身),数字之间 间隔2,
# print(x)
# for x in range(10):
# print("送玫瑰花")
cout=0
for x in range(1,100):
if x%2==0:
cout+=1
print(f"1到100(不含100本身)范围内,有{cout}个偶数。")
i=0# 注意,你要先定义好
for i in range(5):
print(i)
print(i)# 若未先定义好i,则 规范上不建议
i=1
for i in range(1,101):# 1-100
print(f"今天是向小美表白的第{i}天,加油坚持。")
for j in range(1,11):
print(f"给小美送的第{j}朵玫瑰花")
print("小美我喜欢你")
print(f"第{i}天,表白成功")
# range 语法2 range(num1,num2)
# for x in range(5,10):# 从5开始,到10结束(不含10本身)
# print(x)
for i in range(1,10):
for j in range(1,i+1):
print(f"{j}*{i}={j*i}\t",end='')
print()
#
# for i in range(1,6):
# print("语句1")
# continue
# print("语句2")
# continue 只在自己的循环中起作用
# for i in range(1,6):
# print("语句1")
# for j in range(1,6):
# print("语句2")
# continue
# print("语句3")
# print("语句4")
# 遇到break,整个循环结束
# for i in range(1,101):
# print("语句1")
# break
# print("语句2")
# print("语句3")
# 在含break的循环中,break生效。不在循环,不能断别的循环
for i in range(1,6):
print("语句1")
for j in range(1,6):
print("语句2")
break
print("语句3")
print("语句4")
# 定义账户余额变量
sum=10000
# for循环对员工发工资
for i in range(1,21):
import random # 随机生成1-10 要放入for循环中
num = random.randint(1, 10) # 注意!随机生成1-10 要放入for循环中
if num<5:
print(f"员工{i},绩效分{num},低于5,不发工资,下一位。")
continue# continue跳过发放
if sum>=1000:
sum-=1000
print(f"向员工{i}发放工资1000元,账户余额还剩余{sum}元")
else:
print("工资发完了,下个月领取吧。")
break# break结束发放