糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > 《Python基础知识-1变量和简单数据类型》

《Python基础知识-1变量和简单数据类型》

时间:2024-07-20 06:24:19

相关推荐

《Python基础知识-1变量和简单数据类型》

Python Documentation

1 变量

1.1 变量的定义

变量是可以赋给值的标签,也可以说变量指向特定的值。在Python中,每个变量使用前都必须赋值,变量在赋值以后才会被创建。等号(===)用来给变量赋值:

变量名 = 值变量名1, 变量名2... = 值1, 值2...

变量赋值(创建)之后就可以被直接使用了。在程序中可以随时修改变量的值,而Python将始终记录变量的最新值(变量名只有在第一次出现时才是定义变量;如果再次出现,不是定义变量,而是直接使用之前定义过的变量)。

1.2 变量的命名规则

1)命名规则

- 变量名只能包含字母数字下划线

- 不能以数字开头;

- 不要将Python关键字和内置函数名用作变量名。

# 关键字In [1]: import keywordIn [2]: print(keyword.kwlist)Out[2]: ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']# 内置函数abs(), all(), any(), ...

(Python中的变量名是区分大小写的,一般应使用小写的变量名。大写字母在变量名中有特殊的含义:①Python没有内置的常量类型,但程序员会使用全大写来指出应将某个变量视为常量;②驼峰命名法使用到大写字母。)

2)命名方法

当变量名需要由两个或多个单词组成时,可以按照以下方式命名:

【常用】:每个单词都使用小写字母,单词之间使用下划线连接。例如:first_name

小驼峰式命名法:第一个单词以小写字母开始,后续单词的首字母大写。例如:firstName

大驼峰式命名法:每个单词的首字母都大写。例如:FirstName

1.3 变量的类型(type( ))

在Python中定义变量是不需要指定类型的,解释器会根据赋值自动推导出变量中存储数据的类型。数据类型可以分为数字型非数字型

- 数字型:整型(int)、浮点型(float)、复数型(complex)、布尔型(bool)

- 非数字型:字符串(str)、列表(list)、元组(tuple)、集合(set)、字典(dict)

1.4 变量的输入与输出

1)输入input

所谓输入,就是用代码获取用户通过键盘键入的信息。在Python中可以使用 input 函数让程序暂停运行,等待用户输入一些文本,输入的任何内容Python都认为是一个字符串(可使用 int( ) 函数来获取数值输入):

字符串变量名 = input("提示信息:")

例如:

In [1]: prompt = "If you tell us who you are, we can personalize the messages you see."In [2]: prompt += "\nWhat is your first name? "In [3]: name = input(prompt)In [4]: print("\nHello, " + name + "!")Out[4]: If you tell us who you are, we can personalize the messages you see.What is your first name? AdaHello, Ada!

2)格式化输出

在Python中可以使用 input 函数将信息输出到控制台,但如果希望输出文字信息的同时一起输出数据,就需要使用到(①格式化操作符%、②f字符串、③format( ))。下边给出常用的第一种方法,即格式化操作符%。%被称为格式化操作符,专门用于处理字符串中的格式,包含%的字符串被称为格式化字符串。语法格式为:

print("格式化字符串" % 变量1)print("格式化字符串" % (变量1, 变量2...))

(参考链接:Python格式化输出、Python格式化输出)

在默认情况下,print 函数输出内容之后,会自动在内容末尾增加换行;如果不希望末尾增加换行,可以在 print 函数输出内容的后面增加 end=’’ ";引号之间可以指定 print 函数输出内容之后,希望继续显示的内容。例如:

In [1]: print('What is your first name?', end='')In [2]: print('Ada')Out[2]: What is your first name?Ada

2 简单数据类型

2.1 数

1)数字型

整型(int):整数就是没有小数部分的数,Python中的整数包括正整数、零和负整数。有些强类型语言会提供多种整数类型,每种类型的长度不同,能容纳的整数的大小也不同,开发者要根据实际数字的大小选用不同的类型。例如C语言提供了short、int、long、long long四种类型的整数,它们的长度依次递增,初学者在选择整数类型时往往比较迷惑,有时候还会导致数值溢出。而Python则不同,它的整数不分类型,或者说它只有一种类型的整数。

浮点型(float):Python中的小数有两种书写形式,①十进制形式,例如34.6、346.0;②指数形式,例如3.46E5 = 3.46×10^5。

复数型(complex):复数由实部(Re)和虚部(Im)构成,在Python中,复数的虚部以 j 或者 J 作为后缀,例如a + bj。

布尔型(bool):Python提供了bool类型来表示真或假。例如5 > 3比较算式,这个是正确的,在程序世界里称之为真,Python使用 True 来代表;4 > 20比较算式,这个是错误的,在程序世界里称之为假,Python 使用 False 来代表。值得一提的是,布尔类型可以当做整数来对待,即 True 相当于整数值 1,False 相当于整数值 0。

2)注意事项

- 书写很大的数时,可使用下划线将其中的数字分组以使其更加清晰易读,例如a = 14_000_000_000。将数字分组时,即便不是将每三位分成一组也不会影响最终的值,在Python看来,1000和1_000、10_00没什么不同。

- 将任意两个数相除时,结果总是浮点数,即便这两个数都是整数且能够整除。

- 无论是那种运算,只要有操作数是浮点数,Python默认得到的总是浮点数,即使结果原本为整数也是如此。

2.2 运算符

参考链接:数学符号表

1)算数运算符

2)比较(关系)运算符

3)赋值运算符

4)逻辑运算符(一般和关系运算符结合使用)

关于逻辑运算符的说明

- Python逻辑运算符可以用来操作任何类型的表达式,不管表达式是不是布尔类型;同时逻辑运算的结果也不一定是布尔类型,而可以是任意类型的。

例如:

In [1]: print('Ada Lovelace' and 'Python') # return Python

- 在Python中,and 和 or 不一定会计算右边表达式的值,有时候只计算左边表达式的值就能得到最终结果。另外,and 和 or 运算符会将其中一个表达式的值作为最终结果,而不是将 True 或者 False 作为最终结果:

对于 and 运算符,两边的值都为真时最终结果才为真,但是只要其中有一个值为假,那么最终结果就是假,所以Python按照下面的规则执行 and 运算:

如果左边表达式的值为假,那么就不用计算右边表达式的值了,因为不管右边表达式的值是什么,都不会影响最终结果,最终结果都是假,此时 and 会把左边表达式的值作为最终结果。

如果左边表达式的值为真,那么最终值是不能确定的,and 会继续计算右边表达式的值,并将右边表达式的值作为最终结果。对于 or 运算符,情况是类似的,两边的值都为假时最终结果才为假,但是只要其中有一个值为真,那么最终结果就是真,所以Python按照下面的规则执行 or 运算:

如果左边表达式的值为真,那么就不用计算右边表达式的值了,因为不管右边表达式的值是什么,都不会影响最终结果,最终结果都是真,此时 or 会把左边表达式的值作为最终结果。

如果左边表达式的值为假,那么最终值是不能确定的,or 会继续计算右边表达式的值,并将右边表达式的值作为最终结果。

例如:

In [1]: print(0 and 20) # return 0In [2]: print(10 and 20) # return 20In [3]: print(10 or 20) # return 10In [4]: print(0 or 20) # return 20

5)位运算符(二进制)

例如:

In [1]: a = 60 # 60 = 0011 1100In [2]: b = 13 # 13 = 0000 1101In [3]: print(a & b) # 12 = 0000 1100In [4]: print(a | b) # 61 = 0011 1101In [5]: print(a ^ b) # 49 = 0011 0001In [6]: print(~a) # -61 = 1100 0011In [7]: print(a << 2) # 240 = 1111 0000In [8]: print(a >> 2) # 15 = 0000 1111

6)成员运算符

7)身份运算符

is 与 == 的区别:is 用于判断两个变量引用对象是否为同一个(同一块内存空间), == 用于判断引用变量的值是否相等。

In [1]: a = [1, 2, 3]In [2]: b = a[:]In [3]: print(a == b) # return TrueIn [4]: print(a is b) # return False

8)运算符优先级

2.3 字符串

字符串(str):字符串就是一系列字符。在Python中,用引号括起来的都是字符串,其中的引号可以是单引号也可以是双引号(这种灵活性让你能够在字符串中包括引号和撇号)。链接:《Python基础知识-2高级数据类型A》

# 字符串'I told my friend, "Python is my favorite language!"'"The language 'Python' is named after Monty Python, not the snake.""One of Python's strengths is its diverse and supportive community."

1)修改字符串大小写

In [1]: name = "Ada lovelace"In [2]: print(name.title()) # 方法title()以首字母大写的方式显示每个单词Out[2]: 'Ada Lovelace'In [3]: print(name.upper()) # 全部大写Out[3]: 'ADA LOVELACE'In [4]: print(name.lower()) # 全部小写Out[4]: 'ada lovelace'

2)合并(拼接)字符串

# 字符串变量之间使用 + 拼接In [1]: first_name = "ada"In [2]: last_name = "lovelace"In [3]: full_name = first_name + " " + last_nameIn [4]: message = "Hello, " + full_name.title() + "!"In [5]: print(message)Out[5]: 'Hello, Ada Lovelace!'# 使用 f 字符串In [1]: first_name = "ada"In [2]: last_name = "lovelace"In [3]: full_name = f"{first_name} {last_name}"In [4]: message = f"Hello, {full_name.title()}!"In [5]: print(message)Out[5]: 'Hello, Ada Lovelace!'# 字符串变量和整数之间使用 * 重复拼接In [1]: message = "Ada Lovelace " * 2In [2]: print(message)Out[2]: 'Ada Lovelace Ada Lovelace '

3)制表符和换行符(转义字符)

# 制表符 \tIn [1]: print("Python")Out[1]: 'Python'In [2]: print("\tPython")Out[2]: ' Python'# 换行符 \nIn [1]: print("Languages:\nPython\nC\nJavaScript")Out[1]: 'Languages:PythonCJavaScript'

4)删除空格

# 删除字符串两边的空格 strip()In [1]: favorite_language = ' python 'In [2]: print(favorite_language.strip())Out[2]: 'python'# 删除字符串开头的空格 lstrip()In [1]: print(favorite_language.lstrip())Out[1]: 'python '# 删除字符串末尾的空格 rstrip()In [1]: print(favorite_language.rstrip())Out[1]: ' python'# 删除字符串中的空格 replace()In [1]: favorite_language = ' pyt ho n 'In [2]: print(favorite_language.replace(" ", ""))Out[2]: 'python'

(参考链接:字符串方法)

2.4 类型转换

例如:

print(int('29')) # return 29print(float('2.9')) # return 2.9print(complex(2, 9)) # return (2+9j)print(str(29)) # return '29'print(repr(29)) # return '29'print(eval('2+9')) # return 11print(chr(48)) # return 0print(ord('0')) # return 48

ASCII码对照表:

如果觉得《《Python基础知识-1变量和简单数据类型》》对你有帮助,请点赞、收藏,并留下你的观点哦!

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