|
文章目录1.变量的语法1.1定义变量1.1.1硬性规则(务必遵守)1.1.2软性规则(建议遵守)1.2使用变量2.变量的类型2.1整型2.2浮点型2.3字符串类型2.4布尔类型2.5其他类型2.6动态类型特性3.注释3.1注释行3.2文档字符串3.3如何批量注释3.4注释的规范4.输入输出4.1和用户交互4.2通过控制台输出4.3通过控制台输入5.运算符5.1算术运算符5.2关系运算符5.3逻辑运算符5.4赋值运算符5.5其他6.练习1.变量的语法1.1定义变量1.1.1硬性规则(务必遵守)变量名由数字字母下划线构成数字不能开头变量名不能和“关键字”重复变量名大小写敏感.num和Num是两个不同的变量名1.1.2软性规则(建议遵守)给变量命名的时候,尽量使用描述性的单词来表示,尽量通过名字来表现出变量的左右当我们使用一个单词描述不清楚的时候,可以使用多个单词来命名,不怕变量名字长,而怕变量的含义表达的不清楚当变量名包含多个单词的时候,建议使用“驼峰命名法”.形如totalCount,personInfo这种,除了首个单词外,剩余单词首字母大写当包含多个单词的时候,命名有多种规范:驼峰命名:除了第一个单词的首字母,后续每个字母的首字母都大写例如:totalCount蛇形命名:单词之间使用下划线来进行分割例如:total_count1.2使用变量读取变量的值a=10#首次使用=对a进行设置值,这个过程是创建变量(初始化)b=aprint(b)#当然,也可以用一个变量的值赋给另外一个变量.123打印:101修改变量的值a=10#首次使用=对a进行设置值,这个过程是创建变量(初始化)b=aprint(b)a=20#后续对a使用=操作,相当于修改了a的内容(赋值)print(a)123456打印:102012注意:在Python中,修改变量也是使用=运算,看起来和定义变量没有明显区别.2.变量的类型变量里面存储的不仅仅是数字,还可以存储其它种类的数据.为了区分不同种类的数据,我们引入了“类型”这样的概念.和C++/Java等语言不同,Python变量的类型不需要显式指定,而是在赋值的时候确定的.type和print类似,也是python内置的函数.我们可以通过type关键字来查看变量的类型。2.1整型打印:1注意:和C++/Java等语言不同,Python的int类型变量,表示的数据范围是没有上限的。只要内存足够大,理论上就可以表示无限大小的数据。因此,python中就没有long这样的类型了,像byte,short这些类型在python中也不存在。2.2浮点型打印:1注意:和C++/Java等语言不同,Python的小数只有float一种类型,没有double类型.但是实际上Python的float就相当于C++/Java的double,表示双精度浮点数。2.3字符串类型使用''或者""引起来的,称为字符串.可以用来表示文本.打印:1注意:在Python中,单引号构成的字符串和双引号构成的字符串,没有区别.。'hello'和"hello"是完全等价的.。这个单引号和双引号看似没用,实际上是有用的。比如想打印一个句子:Mynameis'YDK'如果只用单引号或者双引号的话是无法实现的。python里面还有一种三引号,来适用下面这种情况:将错误语句注释后,运行。打印:My'name'is"YDK"1可以使用len函数来获取字符串的长度.打印:5helloworld101234在python中,报错有两种情况:语法错误:在程序运行之前,python解释器就能把错误识别出来运行错误:在程序运行之前,识别不了的。必须要执行到对应的代码才能发现问题2.4布尔类型布尔类型是一个特殊的类型,取值只有两种,True(真)和False(假)打印:12布尔类型在后续进行逻辑判断的时候,是非常有用的2.5其他类型除了上述类型之外,Python中还有list,tuple,dict,自定义类型等等。后续再介绍。为什么要有这么多类型?(1)类型决定了数据在内存中占据多大空间.例如float类型在内存中占据8个字节.计算机里面使用二进制来表示数据.也就是每个位只能表示0或者11个二进制位,就称为是一个“比特”,8个二进制位,就称为一个“字节”(Byte)一个float变量在内存中占据8个字节空间,也就是64个二进制位。(2)类型其实约定了能对这个变量做什么样的操作.例如int/float类型的变量,可以进行+-*/等操作而str类型的变量,只能进行+(并且行为是字符串拼接),不能进行-*/,但是还能使用len等其他操作.类型系统其实是在对变量进行“归类”。相同类型的变量(数据)往往具有类似的特性和使用规则。2.6动态类型特性在Python中,一个变量是什么类型,是可以在“程序运行”过程中发生变化的。这个特性称为“动态类型”。打印:123在程序执行过程中,a的类型刚开始是int,后面变成了str,最后变成了boolC++/Java这样的语言则不允许这样的操作.一个变量定义后类型就是固定的了.这种特性则称为“静态类型”.这个是类型声明,方便程序员读程序的时候,更好的去理解,也方便开发工具更好的去解析。动态类型特性是一把双刃剑:对于中小型程序,可以大大的解约代码量(比如写一段代码就可以同时支持多种类型)对于大型程序,则提高了模块之间的交互成本.(程序猿A提供的代码难以被B理解)3.注释Python中有两种风格的注释3.1注释行使用#开头的行都是注释#这是一行注释13.2文档字符串使用三引号引起来的称为“文档字符串”,也可以视为是一种注释.可以包含多行内容一般放在文件/函数/类的开头“”"或者‘’’均可(等价)"""这是文档字符串这是文档字符串"""12343.3如何批量注释选中想要注释的代码,然后同时按Ctrl和/这两个键,即可完成批量注释。3.4注释的规范内容准确:注释内容要和代码一致,匹配,并在代码修改时及时更新.篇幅合理:注释既不应该太精简,也不应该长篇大论.使用中文:一般中国公司都要求使用中文写注释,外企另当别论.积极向上:注释中不要包含负能量(例如领导SB等).4.输入输出4.1和用户交互程序需要和用户进行交互.用户把信息传递给程序的过程,称为“输入”.程序把结果展示给用户的过程,称为“输出”.输入输出的最基本的方法就是控制台.用户通过控制台输入一些字符串,程序再通过控制台打印出一些字符串。PyCharm运行程序,下方弹出的窗口就可以视为是控制台.windows自带的cmd程序,也可以视为是控制台.输入输出的最常见方法是图形化界面.如我们平时用到的QQ,浏览器,steam等,都不需要用户输入命令,而只是通过鼠标点击窗口点击按钮的方式来操作4.2通过控制台输出Python使用print函数输出到控制台不仅能输出一个字符串,还可以输出一个其他类型的变量打印:10True12更多的时候,我们希望能够输出的内容是混合了字符串和变量的例如:输出num=10打印:num=101注意:使用f作为前缀的字符串,称为f-string里面可以使用{}来内嵌一个其他的变量/表达式打印:num=10num=20124.3通过控制台输入python使用input函数,从控制台读取用户的输入打印:请输入一个整数:1你输入的整数是112注意:input的参数相当于一个“提示信息”,也可以没有input的返回值就是用户输入的内容是字符串类型打印:请输入第一个整数:1请输入第二个整数:2a+b=12123此处的结果是字符串拼接,不是算术运算.如果要想进行算术运算,需要先转换类型。打印:请输入第一个整数:1请输入第二个整数:2a+b=3123通过int()把变量转成了int类型类似的,使用float(),bool(),str()等可以完成对应的类型转换5.运算符5.1算术运算符像+-*/%**//这种进行算术运算的运算符,称为算术运算符注意1:/中不能用0作为除数。否则会抛出异常打印:这种运行时出现的错误,也叫做抛出异常。如果程序运行过程中抛出异常,程序直接就中止了。异常后面的代码也就不会执行到了。图中的ZeroDivisionError是除0异常。异常是编程语言中的一种常见机制,表示程序运行过程中,出现了一些“意外情况”,导致程序不能继续往下执行了。打印:有些编程语言中,/整数0也会抛出异常;/浮点数0会得到无穷大。注意2:整数/整数结果可能是小数,而不会截断打印:0.51注意3:%不是“百分数”,而是求余数打印:11注意4:**是求乘方,不光能算整数次方,还能算小数次方打印:162.012注意5://是取整除法(也叫地板除)。整数除以整数,结果还是整数(舍弃小数部分,并向下取整,不是四舍五入)打印:3-4125.2关系运算符像,>=,==,!=这一系列的运算符称为关系运算符,它们是在比较操作数之间的关系。其中:>)等。6.练习(1)[多选]以下关于变量之间加法运算的说法,正确的是:A.Python中的字符串之间够能相加.B.Python中的字符串可以和整数相加.C.Python中的整数可以和浮点数相加.D.Python中的整数可以和布尔值相加.答案:A,C,D(2)[单选]以下关于类型的说法,正确的是:A.Python中既有字符串类型,也有字符类型.B.Python中既有float,也有double.C.Python中既有int,也有longD.Python中的整数表示范围无上限.答案:Dpython里面只有字符串类型,没有字符类型。python中只有floatpython里面只有int(3)[单选]以下Python代码,合法的是A.inta=10B.a=10;C.a=trueD.a=‘aaa’+10答案:BA里面指定类型写法是:a:int=10B里面的;通常情况下是不加的,但是加了也没错。如果多个语句写一行就要加;了,但是这种写法不推荐。C里面应该是TrueD里面也是错误的
|
|