Python学习从0到1 day6 python基础语法4 标识符、运算符和字符串

苦厄难夺凌云志,不死终有出头日

                                   ——24.1.18

一、标识符

1.什么是标识符

标识符:用户在编程的时候所使用的一系列名字,用于给变量、类、方法等命名

2.标识符命名规则

python中,标识符命名规则主要有三类:

①内容限定

        标识符命名中,只允许出现:英文、中文、数字、下划线这四类元素,其他都不允许

        不推荐使用中文

        数字不能用在开头

②大小写敏感,完全区分

③不可使用关键字作为标识符

关键字:

#规则1:内容限定,限定只能使用中文、英文、数字、下划线,不能以数字开头
# 错误的代码示范:1namw = "张三"
# 错误的代码示范:name_! = "张三"
name_ = "张三"
name1 = "张三"
_name = "张三"#规则2:大小写敏感
Itheima = "heima"
itheima = 666
# print(itheima)  #666
# print(Itheima)  #heima#规则3:不可使用关键字
#错误的示例:使用了关键字 class = 1

3.标识符命名规范

变量名、类名、方法名,不同的标识符,有不同的命名规范

变量的命名规范

        见名知意

        下划线命名法

        英文字母全部小写

4.总结

二、运算符

1.算术(数学)运算符

print("1 + 1 = ", 1 + 1)
print("2 - 1 = ", 2 - 1)
print("4 / 2 = ", 4 / 2)
print("9 % 2 = ", 9 % 2)

2.赋值运算符

# 演示python中各类运算符#算数(数学)运算符
print("1 + 1 = ", 1 + 1)
print("2 - 1 = ", 2 - 1)
print("4 / 2 = ", 4 / 2)
print("9 % 2 = ", 9 % 2)# 赋值运算符
num = 1 + 2 + 3# 复合赋值运算符
num = 1
num += 1    #num = num + 1
print("num += 1: ",num)     #num += 1:  2
num -= 1
print("num -= 1: ",num)     #num -= 1:  1
num *= 4
print("num *= 4: ",num)     #num *= 4:  4num = 3
num %= 2
print("num % 2: ",num)      #num % 2:  1num **= 2
print("num ** 2: ",num)     #num ** 2:  1num = 9
num //= 2
print("num % 2: ",num)      #num % 2:  4

3.总结

1.常见的算数(数学)运算符有:

        加(+)、减(-)、乘(*)、除(/)、整除(//)、取余(%)、求平方(**)

2.赋值运算符有:

        标准赋值:=

        复合赋值:+=、-=、*=、/=、//=、%=、**=

三、字符串拓展

1.字符串的三种定义方式

字符串在Python中有多种定义方式:

        ①单引号定义法:name = '一切都会好的'

        ②双引号定义法:name = "一切都会好的"

        ③三引号定义法:name = """一切都会好的"""

三引号定义法:和多行注释的写法一样,同样支持换行操作

使用变量接收它,它就是字符串

不使用变量接收它,就可以作为多行注释使用

#   演示字符串的三种定义方式:
# ①单引号定义法
# ②双引号定义法
# ③三引号定义法# ①单引号定义法,使用单引号进行包围
name = '一切都会好的'
print(type(name))
# ②双引号定义法:使用双引号进行包围
name = "一切都会好的"
print(type(name))
# 三引号定义法:使用三引号进行包围,和多行注释一样
name = '''一切
都会好的
'''
print(type(name))

字符串的引号嵌套

如果定义的字符串自身包含:单引号、双引号自身

写法:

        ①单引号定义法:可以包含双引号

        ②双引号定义法:可以包含双引号

        ③可以使用转义字符(\)来将引号解除效用,变成普通字符串

# 在字符串内包含双引号
name = '"万事胜意"'
print(name)
# 在字符串内包含单引号
name = "'一切都会好的'"
print(name)
# 使用转义字符 \ 解除引号的效用
name = "\"我一直相信\""
print(name)
name = '\'我一直相信\''
print(name)

总结

1.字符串的三种定义方式:

        单引号方式

        双引号方式

        三引号方式

2.引号的嵌套

        可以使用:\ 来进行转义

        单引号内可以写双引号或双引号内可以写单引号

2.字符串拼接

拼接一般用于变量和字符串、变量和变量之间

#字符串字面量之间的拼接
print("一切都会好的"+"我一直相信")#字符串字面量和字符串变量之间的拼接
better = "一切都会好的"
trust = "我一直相信"
print(better + " " + trust +" " + "万事胜意")

总结

1.如何完成字符串拼接?

        使用”+“号连接字符串变量或字符串字面量即可

2.有哪些注意事项?

        无法和非字符串类型进行拼接

3.字符串格式化

name = "一切都会好的"
future = "我一直相信 %s" % name
print(future)

 其中的%s

% 表示:我要占位

s 表示:将变量变成字符串放入占位的地方

所以,综合起来的意思是:我先占个位置 ,等一会有个变量,把它放在%所占到的位置里

多个变量占位,变量要用括号括起来,并按照占位的顺序填入

name = "一切都会好的"
future = "我一直相信 %s" % name
# print(future)
time = 20210723
event = "Rebirth"
print("在%s,发生了事故,但是我活了下来,杀不死我的会让我更强大,我迎来了%s,%s" % (time,event,future))

不同数据类型的占位符号

name = "一切都会好的"
future = "我一直相信 %s" % name
# print(future)
time = 20210723
event = "Rebirth"
print("在%d,发生了事故,但是我活了下来,杀不死我的会让我更强大,我迎来了%s,%s" % (time,event,future))

总结

1.字符串格式化的语法

%占位符        % 变量

2.常用占位符:

字符串:%s        整数:%d        浮点数:%f

4.字符串格式化的精度控制

我们可以使用辅助符号m.n来控制数据的宽度和精度

m,控制宽度,要求是数字(很少使用),设置的密度小于数字自身,不生效

n,控制小数点精度,要求是数字,会进行小数的四舍五入

示例:

%5d:表示将整数的宽度控制在5位,如数字11,被设置为5d,就会变成:[空格][空格][空格]11,用三个空格补足宽度

%5.2f:表示将整数的宽度控制在5位,将小数点精度设置为2

小数点和小数部分也算作宽度计算,如,对11.345设置了%7.2f后,结果是[空格][空格]11.35,两个空格补足宽度,小数部分限制2位精度后,四舍五入为.35

%.2f:表示不限制宽度,只设置小数点精度为2,如11.345设置%.2f后,结果是11.35

num1 = 11
num2 = 11.677
print("数字11宽度限制5,结果是:%5d",num1)
print("数字11宽度限制1,结果是:%1d",num1)
print("数字11.677宽度限制7,小数精度2,结果是:%7.2f",num2)
print("数字11.677宽度不限制,小数精度2,结果是:%.2f",num2)

总结

1.精度控制的语法是:

        m.n的形式控制,如%5d,%5.2f,%.2f

        m和.n均可省略

2.如果m比数字本身宽度还小,会发生什么?

        忽略m,m不生效

3..n会对小数部分做精度控制,同时?

        会对小数部分四舍五入

5.字符串格式化方法2

通过语法:f"内容(变量)"的格式来快速格式化

示例:

name='lcl'
age = 21
price = 27000
print(f"我是{name},我的年龄是{age},我未来的月薪是{price}")

不限数据类型,同时也不做精度控制,原样输出

总结

1.可以通过

        f" {变量} {变量}"的方式进行快速格式化

2.这种方式:

        不理会类型,不做精度控制

        适合对精度没有要求的时候快速使用

6.对表达式进行格式化

表达式:一条具有明确执行结果的代码语句,或者常见的变量定义

如:

        1+1、5*2,就是表达式,有具体的结果

如:

        name = “张三”        age = 11 + 11

        等号右侧的都是表达式,他们有具体的结果,结果赋值给了等号左侧的变量

print("1+1的结果是:%d" % (1+1+4))
print("rebirth_day是:%d" % (21+7+23))
print("字符串的类型是:%s" % type("一切都会好的"))
print(f"1*9的结果是: {1*9}")

在无需使用变量进行数据存储的时候,可以直接格式化表达式,简化代码

总结

1.表达式是什么?

        表达式就是一个具有明确结果的代码语句

2.如何格式化表达式

        f"{表达式}"

        "%s %d %f" % (表达式1,表达式2,表达式3)

练习 股价计算小程序

定义如下变量:

        name 公司名

        stock_price,当前股价

        stock_code,股票代码

        stock_price_daily_growth_factor,股票每日增长系数,浮点数类型,比如1.2

        growth_days,增长天数

计算,经过growth_days天的增长后,股价达到了多少钱

使用字符串格式进行输出,如果是浮点数,要求小数点精度2位数

示例输出:

        公司:公司名,股票代码:xxxxx,当前股价:xxxx        ——> 使用f"(变量)" 输出

        每日增长系数:xxx,经过7天的增长后,股价达到了:xxxxx        ——> 使用“%占位符的方式输出 

name = "光华"
stock_price = 27.81
stock_code = "021104"
#股价每日增长系数
stock_price_daily_growth_factor = 1.01
growth_days = 36
result_price = stock_price * stock_price_daily_growth_factor **growth_days
print(f"公司:{name},股票代码:{stock_code},当前股价:{stock_price}")
print("每日增长系数:%.2f,经过%d天的增长后,股价达到了:%.2f" % (stock_price_daily_growth_factor,growth_days,result_price))

7.数据输入(input语句)

1.input语句(函数)

        数据输出:printf

        数据输入:input()

2.使用也非常简单:

        ①使用input()语句可以从键盘获取输入

        ②使用一个变量接收(存储)input语句获取的键盘输入数据即可

#演示python中的input语句,获取键盘的输入信息
name = input("请您输入您的名字\n")
print("欢迎您,%s" % name)
#输入数字类型
num = input("请告诉我您的生日:")
print(f"您的生日是{num}")
print(type(num))#<class 'str'>
#input语句不管输入什么类型的数据,都会被当作字符串处理
num = int(num)
print(type(num))

总结

1.input()语句的功能是,获取键盘输入的数据

2.可以使用:input(提示信息),用以在使用者输入内容之前显示提示信息

3.要注意,无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型

练习

欢迎登陆小程序

定义两个变量,用以获取从键盘输入的内容,并给出提示信息:

变量1,变量名:user_name,记录用户名称

变量2,变量名:user_type,记录用户类型

并通过格式化字符串的形式,通过print语句输出欢迎信息,如下:

您好,亲爱的user_name,您是user_type用户,欢迎您的光临

user_name = input("请您输入用户名:")
uesr_type = input("请您输入您的用户类型:")
print(f"您好,{user_name},您是尊贵的{uesr_type}用户,欢迎您的光临" )

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/415123.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

详细推导BEC和BSC的信道容量

目录 介绍 一. 熵的计算公式 二. 互信息 三. 计算BSC的信道容量 四. BEC信道与高斯信道容量 五. 信道传输速率与信道容量 小结 介绍 binary symmetric channel&#xff0c;简称BSC&#xff0c;中文翻译为二进制对称信道。 binary erasure channel&#xff0c;简称BEC&…

C++ 设计模式之策略模式

【声明】本题目来源于卡码网&#xff08;题目页面 (kamacoder.com)&#xff09; 【提示&#xff1a;如果不想看文字介绍&#xff0c;可以直接跳转到C编码部分】 【设计模式大纲】 【简介】什么是策略模式&#xff08;第14种模式&#xff09; 策略模式是⼀种⾏为型设计模式&…

【算法】递归

递归 递归初始递归&#xff1a;数列求和递归的应用&#xff1a;任意进制转换递归深度限制递归可视化&#xff1a;分形树递归可视化&#xff1a;谢尔宾斯基Sierpinski三角形递归的应用&#xff1a;汉诺塔递归的应用&#xff1a;探索迷宫 分治策略和递归优化问题兑换最少个数硬币…

Java毕业设计-基于ssm的饮品店接单网页管理系统-第86期

获取源码资料&#xff0c;请移步从戎源码网&#xff1a;从戎源码网_专业的计算机毕业设计网站 项目介绍 基于ssm的饮品店接单网页管理系统&#xff1a;前端 jsp、jquery、bootstrap&#xff0c;后端 springmvc、spring、mybatis&#xff0c;角色分为管理员、员工、顾客&#…

浅析智能家居企业面临的组网问题及解决方案

在这个快速发展的时代&#xff0c;组网对于企业的发展来说是一个至关重要的环节。 案例背景&#xff1a; 案例企业是一家智能家居制造企业&#xff0c;在不同城市分布有分公司、店铺、工厂&#xff0c;这些点原本都是各自采购网络&#xff0c;与总部进行日常沟通、访问。 现在…

Labview实现vi间数据传递的方法汇总 ---子VI、队列、全局变量及UDP/TCP协议传输

本文汇总一下不同VI之间数据传递的方式&#xff0c;使大家明确数据传递的几种类型并灵活使用。 本文程序均上传至云端&#xff0c;读者可自行下载学习。 基于目前大家所学到的基础知识&#xff0c;在Labview中简单来说数据类型基本包括数值、字符串、数组、簇、布尔量、引用、路…

【数据结构和算法】删除链表的中间节点

其他系列文章导航 Java基础合集数据结构与算法合集 设计模式合集 多线程合集 分布式合集 ES合集 文章目录 其他系列文章导航 文章目录 前言 一、题目描述 二、题解 三、代码 四、复杂度分析 前言 这是力扣的 2095 题&#xff0c;难度为中等&#xff0c;解题方案有很多种…

基于 InternLM 和 LangChain 搭建你的知识库

1 环境配置 见&#xff1a;轻松玩转书生浦语大模型internlm-demo 配置验证过程-CSDN博客文章浏览阅读366次&#xff0c;点赞7次&#xff0c;收藏9次。InternLM-chat-7B InternLM 模型https://blog.csdn.net/cq99312254/article/details/135625924?spm1001.2014.3001.5501 1.…

借势营销怎么做才能有效宣传?媒介盒子揭秘

借势营销之所以受到品牌欢迎&#xff0c;原因就在于通过借势营销能够达到“润物细无声和四两拨千斤的效果&#xff0c;用小投入获得大回报&#xff0c;但有许多企业稍有不慎就会翻车&#xff0c;今天媒介盒子就从多个角度和大家聊聊&#xff1a;借势营销怎么做才能有效宣传。 一…

AWS CI/CD之二:配置CodeDeploy

问题 前面一篇文章介绍了CodeBuild中构建一个Java的Maven项目。在这个基础上面&#xff0c;我们继续AWS CI/CD工作流构建之路。 1.配置CodePipeline简配版 这里主要是利用CodePipeline配置之前的CodeBuild项目&#xff0c;以便生产出需要部署的jar文件和CodeDeploy需要用到相…

机器视觉系统在汽车车轮毂检测上的应用

将机器视觉用于轮毂检测&#xff0c;可以利用图像分析的方法来测量轮毂特征尺寸、判断轮毂形状&#xff0c;并获取其位置坐标等信息&#xff0c;从而能够辨识流水生产线上的各种款式和型号的汽车轮毂。 市面上对汽车车轮毂具体检测要求如下 &#xff1a; 1.为了分辨流水线上…

UI设计中的插画运用优势(上)

1. 插画是设计的原创性和艺术性的基础 无论是印刷品、品牌设计还是UI界面&#xff0c;更加风格化的插画能够将不同的风格和创意加入其中&#xff0c;在激烈的竞争中更容易因此脱颖而出。留下用户才有转化。 2. 插画是视觉触发器&#xff0c;瞬间传达大量信息 我们常说「一图胜千…