搜索词>>Python教程 耗时0.0900
  • Python教程-Python读写CSV文件

    前言本教程学习在Python中使用CSV文件前言本教程学习在Python中使用CSV文件。CSV(逗号分隔值)格式是在电子表格和数据库中使用的非常流行的导入和导出格式。Python语言包含该模块,该模块具有用于读取和写入CSV格式的数据的类。csv 使用csv.reader()读取CSV文件该csv.reader()方法返回一个reader对象,该对象将遍历给定CSV文件中的行。假设我们有以下d:/py/xample1.csv文件,内容1,2,3,4 11,22,33,44 111,222,333,444 以下python脚本从此CSV文件读取数据。$title(read-cvs.py) import csv f=open('d:/py/example1.csv','r') with f: reader=csv.reader(f) for row in reader: print(row)命令执行输出:​在上面的代码示例中,我们打开了d:/py/xample1.csv以读取并使用csv.reader()方法加载数据。现在,假设CSV文件将使用其他分隔字符。(严格来说,这不是CSV文件,但是这种做法很常见。)例如,我们有以下items.csv文件,其中的元素由竖线字符(|)分隔:笔|桌子|键盘以下脚本从items.csv文件读取数据。import csv f = open('d:/py/items.csv', 'r') with f: reader = csv.reader(f, delimiter="|") for row in reader: for e in row: print(e)我们delimiter在csv.reader()方法中使用参数指定新的分隔字符。使用csv.DictReader读取CSV文件该csv.DictReader班的运作就像一个普通的读者,但读入字典中的信息映射。字典的键可以与fieldnames参数一起传递,也可以从CSV文件的第一行推断出来。我们有以下values.csv文件:min, avg, max 1, 5.5, 10第一行代表字典的key,第二行代表value。mport csv f = open('values.csv', 'r') with f: reader = csv.DictReader(f) for row in reader: print(row)上面的python脚本使用读取values.csv文件中的值csv.DictReader。这是示例的输出。{'max':'10','min':'1','avg':'5.5'}使用csv.writer()写入CSV文件该csv.writer()方法返回一个writer对象,该对象负责将用户数据转换为给定文件状对象上的分隔字符。import csv nms = [[1, 2, 3, 4, 5, 6], [7, 8, 9, 10, 11, 12]] f = open('numbers2.csv', 'w') with f: writer = csv.writer(f) for row in nms: writer.writerow(row)该脚本将数字写入numbers2.csv文件。该writerow()方法将一行数据写入指定的文件。该脚本将产生以下文件(numbers2.csv):1,2,3,4,5,6 7,8,9,10,11,12一次写入所有数据是可以的。该writerows()方法将所有给定的行写入CSV文件。下一个代码示例将Python列表写入numbers3.csv文件。该脚本将三行数字写入文件。import csv nms = [[1, 2, 3], [7, 8, 9], [10, 11, 12]] f = open('numbers3.csv', 'w') with f: writer = csv.writer(f) writer.writerows(nms)运行上述程序时,以下输出将写入numbers3.csv文件1,2,3 7,8,9 10,11,12 报价单可以在CSV文件中引用单词。Python CSV模块中有四种不同的引用模式:QUOTE_ALL —引用所有字段QUOTE_MINIMAL-仅引用包含特殊字符的字段QUOTE_NONNUMERIC —引用所有非数字字段QUOTE_NONE —不引用字段在下一个示例中,我们向items2.csv文件写入三行。所有非数字字段均用引号引起来。import csv f = open('items2.csv', 'w') with f: writer = csv.writer(f, quoting=csv.QUOTE_NONNUMERIC) writer.writerows((["coins", 3], ["pens", 2], ["bottles", 7]))该程序将创建以下items2.csv文件。引用项目名称,不引用数字表示的数量。"coins",3 "pens",2 "bottles",7CSV方言尽管CSV格式是一种非常简单的格式,但还是有许多差异,例如不同的定界符,换行或引号字符。因此,有不同的CSV方言可用。下一个代码示例将打印可用的方言及其特征。import csv names = csv.list_dialects() for name in names: print(name) dialect = csv.get_dialect(name) print(repr(dialect.delimiter), end=" ") print(dialect.doublequote, end=" ") print(dialect.escapechar, end=" ") print(repr(dialect.lineterminator), end=" ") print(dialect.quotechar, end=" ") print(dialect.quoting, end=" ") print(dialect.skipinitialspace, end=" ") print(dialect.strict)在csv.list_dialects()返回方言名称的列表和csv.get_dialect()方法返回与方言名称相关联的方言。excel ',' 1 None '\r\n' " 0 0 0 excel-tab '\t' 1 None '\r\n' " 0 0 0 unix ',' 1 None '\n' " 1 0 0程序将打印此输出。有三个内置的方言excel,excel-tab和unix。自定义CSV方言在本教程的最后一个示例中,我们将创建一个自定义方言。使用该csv.register_dialect()方法创建自定义方言。import csv csv.register_dialect("hashes", delimiter="#") #自定义一个新的方言,方言名称hashes,分隔符 “#” f = open('items3.csv', 'w') with f: writer = csv.writer(f, dialect="hashes") #指定 新自定义的方言 writer.writerow(("pencils", 2)) writer.writerow(("plates", 1)) writer.writerow(("books", 4))该程序使用(#)字符作为分隔符。使用方法中的dialect选项指定方言csv.writer()。该程序将产生以下文件(items3.csv):pencils#2 plates#1 books#4在本教程中,我们探索了Python csv模块,并介绍了一些在python中读写CSV文件的示例。代码段 小部件
  • Python教程-初步认识Python

    Python简介​Python是一种流行的编程语言,由Guido van Rossum创建,并于1991年发布Python简介​Python是一种流行的编程语言,由Guido van Rossum创建,并于1991年发布。Python被认为是最流行的编程语言中最热门的技能之一。它是开源的,即即使出于商业目的,我们也可以自由安装,使用和分发。在本教程中,我们将学习python基础知识和一些高级概念。1.Python是一门解释性编程语言 编程语言通常被分为两大类别,一个是解释性语言另一个是编译性语言。编译语言是指使用编译器事先将源代码编译为可执行指令的语言(例如Java)。以后,这些符合条件的指令可以由运行时环境执行。解释语言是指不应用中间编译步骤并且可以将源代码直接提供给运行时环境的语言。在此,源代码到机器代码的转换是在程序执行的同时发生的。Python是一门解释性编程语言,意味着,任何用python编写的源代码都可以直接执行而无需编译。2.Python学习很简单Python主要是为了强调代码的可读性而开发的,它的语法允许程序员用更少的代码行来表达实现概念。根据语言中可用关键字的简单性粗略衡量,Python 3有33个关键字,Python 2有31个关键字。相比之下,C ++有62个关键字,Java有53个关键字。Python语法提供了一种易于学习和易于阅读的简洁结构。3.Python与其他语言比较Python使用换行符来完成一条语句。在其他编程语言中,我们经常使用分号或括号。Python依靠缩进(使用空格)来定义范围,例如循环,函数和类。为此,其他编程语言通常使用花括号。4.Python用途和好处Python可用于快速原型制作或可用于生产环境的软件开发。以下列表列出了python的一些流行用法。Python具有强大的标准库和许多有用的模块,可用于开发应用程序。这些模块可以帮助我们添加所需的功能,而无需编写更多代码。由于python是一种解释型高级编程语言,它使我们无需修改即可在多个平台上运行相同的代码。Python可用于以程序样式,面向对象样式或功能样式编写应用程序。Python具有分析数据和可视化等功能,可帮助创建用于大数据分析,机器学习和人工智能的自定义解决方案。Python还用于机器人技术,网页抓取,脚本编写,人脸检测,颜色检测和3D应用程序中。我们可以使用python构建基于控制台的应用程序,基于音频的应用程序,基于视频的应用程序,企业应用程序等。5.安装Python如今,大多数计算机和操作系统均已默认安装了python。要检查机器中是否已经存在python,请执行以下命令。$title(查看python版本) $ python --version #prints Python 3.8.0 如果机器没有安装python,那么我们可以从官网网站免费下载它:https : //www.python.org/6.编写并执行python代码6.1编写Python代码文件如前所述,python是一种解释型语言,因此我们可以将源代码写入扩展名为(.py)的文件中,并使用'python'命令执行该文件。让我们helloworld.py在任何文本编辑器中编写第一个Python文件,称为。$title(helloworld.py) print("Hello, World!") 保存文件并在命令提示符或控制台中执行它$title(Console) $ python helloworld.py #prints Hello, World!6.2控制台内部命令Python代码可以直接在命令行中运行,通常对于测试少量代码很有用。要获取python控制台,请'python'在OS控制台中键入命令。$title(Console) $ python Python 3.8.0 (tags/v3.8.0:fa919fd, Oct 14 2019, 19:21:23) [MSC v.1916 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> print("Hello, World!") Hello, World!
  • Python教程-如何在Sublime编辑器中安装Python包

    一.前言俗话说,工欲善其事必先利其器,本教程主要讲解如何在sublime编辑器中安装python软件包,以实现自动完成等功能,并在sublime编辑器本身中运行build一.前言俗话说,工欲善其事必先利其器,本教程主要讲解如何在sublime编辑器中安装python软件包,以实现自动完成等功能,并在sublime编辑器本身中运行build。二.安装Sublime软件包控制面板首先下载用于sublime编辑器的程序包控件。步骤一:打开URL:https : //packagecontrol.io/installation#st3​Sublime package control步骤二:现在记下sublime编辑器中安装软件包的文件夹的位置。您可以通过单击首选项>浏览包来找到位置。​浏览安装包步骤三:单击“ Package Control.sublime-package”链接,保存从包控制网站下载的文件,并将其放在第二步的文件夹中。步骤四:现在,通过关闭升华编辑器来重新启动它,然后再次将其打开。步骤五:要验证是否正确安装了程序包控件,请单击“ 首选项”>“程序包控件”菜单项。它应该打开包控制窗口。​安装包控制面板三.安装软件包Python 33.1 现在要安装任何软件包支持,包括Python软件包,请转到“偏好设置”>“软件包控制”,然后选择“ 安装软件包”。​安装包窗口界面3.2 在打开的窗口中,键入“ python”以过滤仅与python相关的软件包列表。​选择要安装的Python软件包等待几秒钟,Python包将安装到编辑器中。四.验证Python自动完成和构建要验证python支持,请再次重新启动IDE(sublime)。创建一个名为name的文件demo.py。输入一些简单的命令,例如print。它应该打开自动完成窗口。现在输入简单的hello world code,然后输入CTRL + Bkeyborad。它将在底部窗格中打开输出输出窗口,并将在文件中显示命令的生成输出demo.py。​Sublime Build Output现在,您可以使用sublime编辑器创建和构建python程序了。
  • Python教程-Python字符串endswith()

    Python string.endswith()用于检查特定文本模式(例如域名扩展等)的字符串结尾Python string.endswith()用于检查特定文本模式(例如域名扩展等)的字符串结尾。​1.字符串endswith()方法 检查字符串结尾的一种简单方法是使用String.endswith()。example1.py >>> url = 'http://www.leftso.com' >>> url.endswith('.com') True #输出 >>> url.endswith('.net') false #输出2.带元组的字符串endswith() 如果您需要检查多个选择,只需提供一组元串即可endswith()。example2.py >>> domains = ["example.io", "example.com", "example.net", "example.org"] >>> [name for name in domains if name.endswith(('.com', '.org')) ] ['example.com', 'example.org'] #输出 >>> any( name.endswith('.net') for name in domains ) True #输出3.字符串endswith()与列表或集合 要使用endswith(),实际上需要元组作为输入。如果您碰巧在列表或集合中指定了选项,请确保首先使用它们进行转换tuple()。例如:$title(example3.py) >>> choices = ['.com', '.io', '.net'] >>> url = 'http://www.leftso.com' >>> url.endswith(choices) #ERROR !! TypeError: endswith first arg must be str, unicode, or tuple, not list >>> url.endswith( tuple(choices) ) #Correct True #输出Python教程 图像 小部件
  • Python教程–Python注释语法

    前言在Python(或任何其他编程语言)中,注释用于解释源代码前言在Python(或任何其他编程语言)中,注释用于解释源代码。注释描述了代码,这有助于将来维护应用程序。​python中的注释:# prints 4 print(2 + 2) print(2 + 3) # prints 5 """ prints the sum of two numbers which are 2 and 2 """ print(2 + 2)Python中的注释类型Python支持编写简单的单行注释以及多行注释。单行注释一个简单的单行注释将以井号(#)字符开头。Python运行时会忽略#字符后写的任何文本,并将其视为注释。简单注释例子:# This is a simple comment print(2 + 2) print(2 + 3) # prints 5多行注释Python没有什么特别的东西可以写多行注释。要编写它,我们可以编写多个单行注释。我推荐这种形式的注释。# This statement # prints the sum of # two numbers which are 2 and 2 print(2 + 2)我们可以利用未分配给变量的多行字符串文字(使用三引号)。Python会忽略未分配给任何变量的字符串文字,因此不会影响程序执行。""" This statement prints the sum of two numbers which are 2 and 2 """ print(2 + 2)
  • Python教程-Python中的int或Integers

    1. Python整数类型值​​​​​​​​在Python中,一个int或整数是:不含小数的整数正,负或零无限长度可能包含下划线以提高可读性x = 10 y = 12345678987654321 z = 12_34_56 print(1. Python整数类型值​​​​​​​​在Python中,一个int或整数是:不含小数的整数正,负或零无限长度可能包含下划线以提高可读性x = 10 y = 12345678987654321 z = 12_34_56 print(x) # 10 print(y) # 12345678987654321 print(z) # 1234562.整数可以是八进制和十六进制在python中,我们也可以用八进制或十六进制表示形式来表示整数。八进制和十六进制数可以为负数,但不能以指数形式编写。八进制前缀'0o'(零后跟字母“ o”),并且包含从0到7的数字。十六进制前缀'0x'(零后跟字母“ x” –大写或小写),并包含0到9的数字或A到F的字母(大写或小写)。$title(octal and hex integers) octalInt = 0o22 hexInt = 0xAA print(octalInt) # 18 print(hexInt) # 1703.算术运算3.1。加法,减法,乘法和除法 这些操作与其他语言非常相似。由/操作员执行的标准除法运算通常返回浮点结果。使用楼层除法运算符//删除小数点后的数字。x / y :返回x和y的商x // y :返回x和y的(加倍)商x % y :x / y的余数divmod(x, y) :对(x // y,x%y)$title(加,减,乘,除) x = 22 y = 5 print (x + y) # Prints 27 print (x - y) # Prints 17 print (x * y) # Prints 110 print (x / y) # Prints 4.4 print (x // y) # Prints 4 print (x % y) # Prints 2 print ( divmod(x, y) ) # Prints (4, 2)3.2。递增和递减增量(+=x)添加x到操作数。减量(-=x)减去x操作数。$title(递增和递减整数值) x = 10 y = 10 x += 1 print (x) # Prints 11 x += 5 print (x) # Prints 16 y -= 1 print (y) # Prints 9 y -= 5 print (y) # Prints 43.3。指数 使用**运算符可以进行指数计算。$title(指数值) x = 10 y = 2 print (x ** y) # Prints 1004.检查实例类型 如果要验证整数是否属于int类,可以使用isinstance。$title(int类型) x = 10 print( isinstance(x, int) ) # Prints True5.将整数转换为字符串 使用字符串构造函数str()。$title(int to str) x = 10 valueOfX = str( x ) # '10'6.将字符串转换为整数 使用整数构造函数int()。$title(int to str) valueOfX = '10' x = int( valueOfX ) # 10Python教程 图像 小部件
  • Python教程-Python httplib2 HTTP GET和POST使用详解

    Python httplib2 简介学习使用Python httplib2模块Python httplib2 简介学习使用Python httplib2模块。的超文本传输协议(HTTP)是用于分布式,协作,超媒体信息系统的应用协议。HTTP是万维网数据通信的基础。Python httplib2模块提供了用于通过HTTP访问Web资源的方法。它支持许多功能,例如HTTP和HTTPS,身份验证,缓存,重定向和压缩。检查httplib2库版本第一个程序打印库的版本,其版权和文档字符串。import httplib2 print(httplib2.__version__) print(httplib2.__copyright__) print(httplib2.__doc__)在httplib2.__version__给出的版本httplib2库中,httplib2.__copyright__给出了其版权,以及httplib2.__doc__它的文档字符串。执行上方的代码可能遇到模块未找到错误,如下图:​如果出现上方问题,我们进行安装该模块即可,以下为Python 3.x版本的安装命令pip3 install httplib2 --upgrade 安装过程如下:​httplib2 安装 安装完成后我们再次执行版本检查的代码:​httplib2信息查看  使用httplib2读取网页 在下面的示例中,我们展示了如何从名为http://www.baidu.com的网站获取HTML内容。import httplib2 http = httplib2.Http() content = http.request("http://www.baidu.com")[1] print(content.decode()) 使用创建一个HTTP客户端httplib2.HTTP()。使用该request()方法创建一个新的HTTP请求。默认情况下,它是一个GET请求。返回值是响应和内容的元组。响应部分内容展示:​剥离HTML标签 以下程序获取一个小型网页,并剥离其HTML标签。import httplib2 import re http = httplib2.Http() content = http.request("http://www.baidu.com")[1] stripped = re.sub('<[^<]+?>', '', content.decode()) print(stripped) 一个简单的正则表达式用于剥离HTML标记。请注意,我们正在剥离数据,我们没有对其进行清理。(这是两总不同的情况。)​检查响应状态 响应对象包含一个status给出响应状态代码的属性。import httplib2 http = httplib2.Http() resp = http.request("http://www.baidu.com")[0] print(resp.status) resp = http.request("http://www.leftso.com/blog/0.html")[0] print(resp.status) 我们使用request()方法执行两个HTTP请求,并检查返回的状态。​200是成功HTTP请求的标准响应,而404则表明找不到所请求的资源。发送HTTP HEAD请求 HTTP HEAD方法检索文档标题。标头由字段组成,包括日期,服务器,内容类型或上次修改时间。import httplib2 http = httplib2.Http() resp = http.request("http://www.leftso.com/assist/images/carousel/855892C7F4734F3CB0721835573BAD07.jpg", "HEAD")[0] print("Server: " + resp['server']) print("Last modified: " + resp['last-modified']) print("Content type: " + resp['content-type']) print("Content length: " + resp['content-length']) ​这是程序的输出。从输出中,我们可以看到该网页是由FreeBSD托管的Apache Web服务器交付的。该文档的最后修改时间是1999年。网页是HTML文档,其长度为72个字节。发送HTTP GET请求 HTTP GET方法请求指定资源的表示形式。对于此示例,我们还将使用greet.php脚本:<?php echo "Hello " . htmlspecialchars($_GET['name']); ?> 在/usr/share/nginx/html/目录中,我们有此greet.php文件。该脚本返回name变量的值,该值是从客户端检索到的。该htmlspecialchars()函数将特殊字符转换为HTML实体;例如&到&amp.。import httplib2 http = httplib2.Http() content = http.request("http://localhost/greet.php?name=Peter", method="GET")[1] print(content.decode()) 该脚本将带有值的变量发送到服务器上的PHP脚本。该变量直接在URL中指定。Hello Peter 这是示例的输出。127.0.0.1 - - [21/Aug/2016:17:32:31 +0200] "GET /greet.php?name=Peter HTTP/1.1" 200 42 "-" "Python-httplib2/0.8 (gzip)" 我们检查了nginx访问日志。发送HTTP POST请求 POST请求方法请求Web服务器接受并存储请求消息正文中包含的数据。上载文件或提交完整的Web表单时经常使用它。<?php echo "Hello " . htmlspecialchars($_POST['name']); ?> 在本地Web服务器上,我们有此target.php文件。它只是将过帐的值打印回客户。import httplib2 import urllib http = httplib2.Http() body = {'name': 'Peter'} content = http.request("http://localhost/target.php", method="POST", headers={'Content-type': 'application/x-www-form-urlencoded'}, body=urllib.parse.urlencode(body) )[1] print(content.decode()) 脚本发送name带有Peter值的键的请求。数据使用urllib.parse.urlencode()方法进行编码,并在请求的正文中发送。Hello Peter 这是mpost.py脚本的输出。 127.0.0.1 - - [23/Aug/2016:12:21:07 +0200] "POST /target.php HTTP/1.1" 200 37 "-" "Python-httplib2/0.8 (gzip)" 使用POST方法时,不会在请求URL中发送该值。发送用户代理信息 在本节中,我们指定用户代理的名称。<?php echo $_SERVER['HTTP_USER_AGENT']; ?> 在nginx文档根目录下,我们有agent.php文件。它返回用户代理的名称。import httplib2 http = httplib2.Http() content = http.request("http://localhost/agent.php", method="GET", headers={'user-agent': 'Python script'})[1] print(content.decode()) 该脚本向脚本创建一个简单的GET请求agent.php。在headers字典中,我们指定用户代理。这可以通过PHP脚本读取,并返回给客户端。Python script 服务器使用我们随请求发送的代理名称进行了响应。将用户名/密码添加到请求 客户端的add_credentials()方法设置用于领域的名称和密码。安全领域是一种用于保护Web应用程序资源的机制。$ sudo apt-get install apache2-utils $ sudo htpasswd -c /etc/nginx/.htpasswd user7 New password: Re-type new password: Adding password for user user7 我们使用该htpasswd工具创建用于基本HTTP身份验证的用户名和密码。location /secure { auth_basic "Restricted Area"; auth_basic_user_file /etc/nginx/.htpasswd; } 在nginx /etc/nginx/sites-available/default配置文件中,我们创建一个安全页面。领域的名称是“禁区”。<!DOCTYPE html> <html lang="en"> <head> <title>Secure page</title> </head> <body> <p> This is a secure page. </p> </body> </html> 在/usr/share/nginx/html/secure目录中,我们有上面的HTML文件。import httplib2 user = 'user7' passwd = '7user' http = httplib2.Http() http.add_credentials(user, passwd) content = http.request("http://localhost/secure/")[1] print(content.decode()) 该脚本连接到安全网页;它提供访问该页面所需的用户名和密码。<!DOCTYPE html> <html lang="en"> <head> <title>Secure page</title> </head> <body> <p> This is a secure page. </p> </body> </html> 使用正确的凭据,脚本将返回受保护的页面。在本教程中,我们探索了Python httplib2模块。
  • Python教程-Python数据类型

    Python –数据类型数据类型定义变量的类型Python –数据类型数据类型定义变量的类型。由于一切都是Python中的对象,因此数据类型实际上是类。变量是类的实例。在任何编程语言中,都可以对不同类型的数据类型执行不同的操作,其中某些数据类型与其他数据类型相同,而某些数据类型可能非常特定于该特定数据类型。​1. Python中的内置数据类型Python默认具有以下内置数据类型。类别数据类型/类名Text/StringstrNumericint, float, complexListlist, tuple, rangeMapdictSetset, frozensetBooleanboolBinarybytes, bytearray, memoryview2.Python详细的数据类型2.1。str字符串可以定义为用单引号,双引号或三引号引起来的字符序列。三引号(“””)可用于编写多行字符串。$title('str'数据类型) x = 'A' y = "B" z = """ C """ print(x) # prints A print(y) # prints B print(z) # prints C print(x + y) # prints AB - concatenation print(x*2) # prints AA - repeatition operator name = str('john') # Constructor sumOfItems = str(100) # type conversion from int to string2.2。int, float, complex这些是数字类型。它们是在将数字分配给变量时创建的。int 保留长度不受限制的带符号整数。float 保留浮点精度数字,并且它们的精度最高为15个小数位。complex –复数包含实部和虚部。$title(数字类型) x = 2 # int x = int(2) # int x = 2.5 # float x = float(2.5) # float x = 100+3j # complex x = complex(100+3j) # complex2.3。list, tuple, range在Python中,list是使用方括号()和逗号()编写的一些数据的有序序列。列表可以包含不同类型的数据。[ ],Slice [ :]运算符可用于访问列表中的数据。所述并置运算符(+)和重复操作符(*)的工作原理类似的str数据类型。甲范围可以被认为是sublist,一个的取出list使用切片运算符。一个元组是类似list的-除了tuple是一个只读的数据结构,我们不能修改一个元组的项目的规模和价值。另外,项目用括号括起来(, )。$title(集合数据类型) randomList = [1, "one", 2, "two"] print (randomList); # prints [1, 'one', 2, 'two'] print (randomList + randomList); # prints [1, 'one', 2, 'two', 1, 'one', 2, 'two'] print (randomList * 2); # prints [1, 'one', 2, 'two', 1, 'one', 2, 'two'] alphabets = ["a", "b", "c", "d", "e", "f", "g", "h"] print (alphabets[3:]); # range - prints ['d', 'e', 'f', 'g', 'h'] print (alphabets[0:2]); # range - prints ['a', 'b'] randomTuple = (1, "one", 2, "two") print (randomTuple[0:2]); # range - prints (1, 'one') randomTuple[0] = 0 # TypeError: 'tuple' object does not support item assignment2.4。dict字典或字典是项的键值对的有序集合。键可以保存任何原始数据类型,而值是任意的Python对象。字典中的条目用逗号分隔并括在花括号中{, }。$title(字典数据类型) charsMap = {1:'a', 2:'b', 3:'c', 4:'d'}; print (charsMap); # prints {1: 'a', 2: 'b', 3: 'c', 4: 'd'} print("1st entry is " + charsMap[1]); # prints 1st entry is a print (charsMap.keys()); # prints dict_keys([1, 2, 3, 4]) print (charsMap.values()); # prints dict_values(['a', 'b', 'c', 'd'])2.5。set, frozensetpython中的set可以定义为花括号中包含的各种项目的无序集合{, }。集合中的元素不能重复。python set的元素必须是不可变的。不同于list,没有indexset元素。这意味着我们只能循环访问的元素set。该冻结套是正常集的不变形式。这意味着我们无法删除任何项目或将其添加到冻结集中。digits = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} print(digits) # prints {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} print(type(digits)) # prints <class 'set'> print("looping through the set elements ... ") for i in digits: print(i) # prints 0 1 2 3 4 5 6 7 8 9 in new lines digits.remove(0) # allowed in normal set print(digits) # {1, 2, 3, 4, 5, 6, 7, 8, 9} frozenSetOfDigits = frozenset({0, 1, 2, 3, 4, 5, 6, 7, 8, 9}) frozenSetOfDigits.remove(0) # AttributeError: 'frozenset' object has no attribute 'remove'2.6。boolbool值是两个恒定的对象False和True。它们用于表示真值。在数字上下文中,它们的行为分别类似于整数0和1。x = True y = False print(x) #True print(y) #False print(bool(1)) #True print(bool(0)) #False2.7。bytes, bytearray, memoryviewbytes和bytearray用于处理二进制数据。所述memoryview使用缓冲协议来访问其他二进制对象的存储器,而无需进行复印。字节对象是单个字节的不可变序列。仅在处理与ASCII兼容的数据时,才应使用它们。bytes文字的语法与文字的语法相同string,只是'b'添加了前缀。bytearray对象总是通过调用构造函数来创建的bytearray()。这些是可变的对象。x = b'char_data' x = b"char_data" y = bytearray(5) z = memoryview(bytes(5)) print(x) # b'char_data' print(y) # bytearray(b'\x00\x00\x00\x00\x00') print(z) # <memory at 0x014CE328>3. type()函数该type()函数可用于获取任何对象的数据类型。获取数据类型:x = 5 print(type(x)) # <class 'int'> y = 'howtodoinjava.com' print(type(y)) # <class 'str'>
  • Python教程-Python中的变量

    了解python中的变量,声明局部变量和全局变量了解python中的变量,声明局部变量和全局变量。另外,了解python函数内部使用的全局关键字。​1.创建变量1.1。简单分配Python语言没有用于声明变量的关键字。当我们首先为变量赋值时,会立即在适当位置创建一个变量。创建变量:i = 20 blogName = "leftso" print(i) # prints 20 print(blogName) # prints leftso可以使用单引号和双引号来创建字符串类型的变量。$title(String类型) author = 'Lokesh' blogName = "leftso" print(author) # prints Lokesh print(blogName) # prints leftso1.2。连锁分配Python还允许使用链式分配,这使得可以将相同的值同时分配给多个变量。i = j = k = 20 print(i) # prints 20 print(j) # prints 20 print(k) # prints 201.3。单行中的多个分配Python允许您在一行中将值分配给多个变量。x, y, z = "A", "B", 100 print(x) # prints A print(y) # prints B print(z) # prints 1001.2。变量重新声明由于变量不需要数据类型信息,因此我们可以毫无问题地重新分配任何类型的新值。在Python中,可以为变量分配一种类型的值,然后在以后重新分配其他类型的值。$title(变量重申明) index = 10 index = 20 index = "NA" print(index) # prints NA2.命名规范在Python中创建变量的规则是:变量名必须以字母或下划线字符开头。变量名不能以数字开头。变量名称只能包含字母数字字符和下划线 (A-z, 0-9, and _ )。变量名称区分大小写。例如,name, Name 和 NAME是三个不同的变量。注意: Python 3具有完整的Unicode支持,它也允许在变量名中使用Unicode字符。3.局部变量与全局变量3.1。创建局部变量和全局变量在函数内部创建的变量称为局部变量。在函数外部创建的变量是全局变量。全局变量可以被函数内部和外部的每个人使用。x = 10 # 全局变量 def myfunc(): y = 10 # 局部变量 print("Sum of x and y = " + str(x + y)) # prints Sum of x and y = 20 myfunc() print("Sum of x and y = " + str(x + y)) # NameError: name 'y' is not defined3.2。局部变量限制在函数范围内如果在函数内部创建具有相同名称的变量,则该变量将是局部变量,并且只能在函数内部使用。具有相同名称的全局变量将保留原样,并具有原始值。x = 10 # 全局变量 def myfunc(): x = 20 # 局部变量 print("x is " + str(x)) # prints x is 20 myfunc() print("x is " + str(x)) # prints x is 103.3。'global'关键字要在函数内部创建全局变量,可以使用global关键字。x = 10 # 全局变量 def myfunc(): global y y = 10 # 在函数内部创建的全局变量 print("Sum of x and y = " + str(x + y)) # prints Sum of x and y = 20 myfunc() print("Sum of x and y = " + str(x + y)) # prints Sum of x and y = 20Python变量 图像 小部件
  • Python教程-Python保留字符/关键词

    ​Python关键字是python编程语言的保留字,这些关键字不能用于其他目的​Python关键字是python编程语言的保留字,这些关键字不能用于其他目的。Python中有35个关键字-下面列出了它们的用法关键词描述and一个逻辑的“并且”操作,如果所有条件都是True,则返回Truex = (5 > 3 and 5 < 10)print(x)    # Trueor一个逻辑的“或者”操作,如果其中一个条件是true则返回True,如果全部条件都是false,则返回Falsex = (5 > 3 or 5 > 10)print(x)    # Trueas用来创建一个别名import calendar as cprint(c.month_name[1])  #Januaryassert它可以用于调试代码。 它会测试一个条件并返回True,否则返回True。x = "hello" assert x == "goodbye", "x should be 'hello'"  # AssertionErrorasync它被用来声明一个作为协程的函数,就像@ asyncio.coroutine装饰器所做的一样。async def ping_server(ip):await它用于调用异步协程。async def ping_local():    return await ping_server('192.168.1.1')class用于创建一个类class User:  name = "John"  age = 36def它用于创建或定义函数/方法。def my_function():  print("Hello world !!") my_function()del它用于删除对象。 在Python中,所有事物都是对象,因此del关键字也可用于删除变量,列表或列表的一部分等。x = "hello" del xif它用于创建条件语句,该条件语句仅在条件为True时才允许我们执行代码块。x = 5 if x > 3:  print("it is true")elif他是 else if的缩写i = 5 if i > 0:    print("Positive")elif i == 0:    print("ZERO")else:    print("Negative")else它在if..else语句中确定条件为False时该如何处理。i = 5 if i > 0:    print("Positive")else:    print("Negative")它也可以用在try ...区块中。x = 5 try:    x > 10except:    print("Something went wrong")else:    print("Normally execute the code")try它定义了一个代码块来测试它是否包含任何错误。except如果try块引发错误,它将定义要运行的代码块。try:    x > 3except:    print("Something went wrong")finally它定义了一个代码块,无论try块是否引发错误,该代码块都将执行。try:    x > 3except:    print("Something went wrong")finally:     print("I will always get executed")raise它用于手动引发异常。x = "hello" if not type(x) is int:    raise TypeError("Only integers are allowed")False它是一个布尔值,与0相同。True它是一个布尔值,与1相同。for它用于创建for循环。 for循环可用于遍历序列(如列表,元组等)。for x in range(1, 9):    print(x)while它用于创建while循环。 循环继续进行,直到条件语句为假。x = 0 while x < 9:    print(x)    x = x + 1break它用于中断for循环或while循环。i = 1 while i < 9:    print(i)    if i == 3:        break    i += 1continue它用于在for循环(或while循环)中结束当前迭代,并继续进行下一个迭代。for i in range(9):    if i == 3:        continue    print(i)import它用于导入模块。import datetimefrom它仅用于从模块中导入指定的节。from datetime import timeglobal它用于从非全局范围创建全局变量,例如 在函数内部。def myfunction():    global x    x = "hello"in1.用于检查序列(列表,范围,字符串等)中是否存在值。2.它也用于迭代for循环中的序列。fruits = ["apple", "banana", "cherry"] if "banana" in fruits:    print("yes") for x in fruits:    print(x)is它用于测试两个变量是否引用同一对象。a = ["apple", "banana", "cherry"]b = ["apple", "banana", "cherry"]c = a print(a is b)   # Falseprint(a is c)   # Truelambda它用于创建小的匿名函数。 它们可以接受任意数量的参数,但只能有一个表达式。x = lambda a, b, c : a + b + c print(x(5, 6, 2))None它用于定义一个空值或完全没有值。 None与0,False或空字符串不同。None是它自己的数据类型(NoneType),并且只有None可以是None。x = None if x:  print("Do you think None is True")else:  print("None is not True...")      # Prints this statementnonlocal它用于声明变量不是局部变量。 它用于在嵌套函数内部使用变量,其中变量不应属于内部函数。def myfunc1():    x = "John"    def myfunc2():        nonlocal x        x = "hello"    myfunc2()    return x print(myfunc1())not它是一个逻辑运算符,并反转True或False的值。x = False print(not x)    # Truepass它用作将来代码的占位符。 当执行pass语句时,什么也不会发生,但是当不允许使用空代码时,可以避免出现错误。循环,函数定义,类定义或if语句中不允许使用空代码。for x in [0, 1, 2]:            passreturn它是退出一个函数并返回一个值。def myfunction():            return 3+3with用于简化异常处理yield要结束一个函数,返回一个生成器