我的编程空间,编程开发者的网络收藏夹
学习永远不晚

整理python教程

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

整理python教程

python简介

Python是一门简单易学,功能强大的编程语言。它具有高效的高层次数据结构,简单但有效的方式支持面向对象编程,语法优雅,动态类型,解释执行。使之成为多数平台上很多领域的脚本和快速应用开发的理想语言。它的设计理念强调代码的可读性, 跟C ++或Java等语言比可以用更少的代码实现同样的概念。Python能清晰地实现小型和大型程序。

Python解释器及其丰富的标准库的源码或者二进制版本可以从http://www.python.org/免费获取和转发。该还包含很多免费的第三方Python模块、程序、工具的发布链接及附加文档。

Python的解释器很容易用C或C++(或其他c可以调用的语言)扩展新功能和数据类型。 Python也适用于作为定制应用的扩展语言。

Python支持多种编程范式,包括面向对象的,命令式和函数式或过程式编程风格。它具有动态类型系统和自动内存管理和拥有庞大而全面的标准库

Python虚拟机本身几乎可以在所有的作业系统中运行。使用一些诸如py2exe、PyPy、PyInstaller之类的工具可以将Python源代码转换成可以脱离Python解释器运行的程序。

Python的官方解释器是CPython,该解释器用C语言编写,是一个由社区驱动的自由软件,目前由Python软件基金会管理。

本教程向读者通俗地介绍Python语言和系统的基本概念和特点。配合Python解释器边学边练最佳,所有例子已经自包含在教程中,也可离线阅读。

标准对象和模块参见The Python Standard Library。The Python Language Reference提供了Python更正式的说明。要用C或C++编写扩展参见Extending and Embedding the Python Interpreter和Python/C API Reference Manual。

本教程不会面面俱到。它介绍了许多Python的最引人注目的特性,会让你了解python风格。看完之后可阅读和编写Python模块。

Python的使用范围

大陆开源软件排名第一的×××goagent就是纯python书写的。

豆瓣网、知乎、果壳、海淘通、Reddit等公司python占了大头。

YouTube、Google、Facebook、Yahoo!、NASA等公司python是核心语言。

阿里巴巴、腾讯、百度、OPPO等有较大规模的python应用。


Web开发

Python经常被用于Web开发。比如,通过mod_wsgi模块,Apache可以运行用Python编写的Web程序。使用Python语言编写的 Gunicorn作为Web服务器,也能够运行Python语言编写的Web程序。Python定义了WSGI标准应用接口来协调Http服务器与基于 Python的Web程序之间的沟通。一些Web框架,如Django、Pyramid、TurboGears、web2py、Zope、Flask、tornoda等,可以让程序员轻松地开发和管理复杂的Web程序。 
Python 对于各种网络协议的支持很完善,因此经常被用于编写服务器软件、网络蠕虫。第三方库Twisted支持异步在线编写程序和多数标准的网络协议(包含客户端 和服务器),并且提供了多种工具,被广泛用于编写高性能的服务器软件。另有gevent这个流行的第三方库,同样能够支持高性能高并发的网络开发。

爬虫相关的库有lxml、re、urllib2、BeautifulSoup、scrapy等。

根据IEEE统计、Python是仅次于Java的第2大web开发语言。


GUI开发:

Python本身包含的Tkinter库能够支持简单的GUI开发。但是越来越多的Python程序员选择wxPython或者PyQt来开发跨平台的桌面软件。使用它们开发的桌面软件运行速度快,与用户的桌面环境相契合。通过PyInstaller还能将程序发布为独立的安装程序包。与C++相比较,使用Python开发桌面软件通常更快更容易。


操作系统:

在很多作业系统里,Python是标准的系统组件。大多数Linux发布版以及NetBSD、OpenBSD和Mac OS X都集成了Python,可以在终端机下直接运行Python。有一些Linux发布版的安装器使用Python语言编写,比如Ubuntu的Ubiquity安装器、Red Hat Linux和Fedora的Anaconda安装器。Gentoo Linux使用Python来编写它的Portage包管理系统。Python标准库包含了多个调用作业系统功能的库。通过pywin32这个第三方软件包,Python能够访问Windows的COM服务及其它Windows API。使用IronPython,Python程序能够直接调用.Net Framework。一般说来,Python编写的系统管理脚本在可读性、性能、源代码重用度、扩展性几方面都优于普通的shell脚本。在树莓派等相关硬件的系统中,python是核心语言。


自动化测试

多数工具集成python作为开发语言。比如自动化测试工具Appium、Selenium等。性能测试工具Grinder。

UI测试有uiautomator、sikuli、PyAutoGUI、pywinauto、ldtp、dogtail等。

Python的性能测试库multi-mechanize和locustio、funkload等模块具备强大的编程能力,通常扩展性和执行效率远强于Loadrunner和Jmeter。

Python在自动化测试交付很有知名度。比如Scons、buildbot(在谷歌chrome os使用)等。Jenkins有大量的python插件,比如facebook开发的https://github.com/facebook/buck。

自动化测试框架pytest、Lettuce、Robot Framework、behave等有一定名气。

接口测试Python大量的库支持大量协议,比如HTTP,就可以requests基于pytest很快定制简单的接口测试框架。

抓包与流量控制有scapy、ATC、mitmproxy等。

命令行自动化有 pexpect、paramiko、subprocess、Fabric等。

安全测试:Flawfinder(http://www.dwheeler.com/flawfinder/  )、knock(https://github.com/guelfoweb/knock  )等
死链接检查:LinkChecker等
bug管理:Trac、roundup等

python的测试工具之多,以致有一个专门的网页收集:https://wiki.python.org/moin/PythonTestingToolsTaxonomy。


跨语言协作:胶水语言:

python是各种语言交互的最佳语言。python本身有c,java,c#的实现,可以直接调用对应语言的相关功能。对于主流的语言,python都可以良好的交互。


科学计算:

NumPy、SciPy、Matplotlib可以让Python程序员编写科学计算程序。Python一开始就在科学计算方面很出名,现在也是大数据处理的核心语言,多数云平台选择python作为核心语言。


游戏

很多游戏使用C++编写图形显示等高性能模块,而使用Python或者Lua编写游戏的逻辑、服务器。相较于Python,Lua的功能更简单、体积更小;而Python则支持更多的特性和数据类型。很多游戏,如EVE Online使用Python来处理游戏中繁多的逻辑。

如何选择python第三方模块 


1,http://stackoverflow.com/   是选择模块的首选。在里面搜索python相关内容,一般会有python模块的比较。


2,pypi( https://pypi.python.org/pypi  )是选择python模块最重要的依据。


    pypi上面汇集了python的多数模块。比如 https://pypi.python.org/pypi/pexpect/3.0  是pexpect模块的介绍。 20553 downloads in the last month 表明上个月总共被下载了20553次。如果模块只在pypi上面提供下载,且月下载量不足1000,一般是用户很少,通常不推荐使用(用户很少的专用领域除外)。


3,linux的包管理提供了丰富的高质量的python模块,可以尝试使用。


    比如在centos中使用 "yum search all pexpect"


4,pythonxy 封装很多优秀的windows上的python模块,安装方便,推荐。

https://python-xy.github.io/downloads.html


安装

1,Linux类系统自带,初学使用默认即可。

2,Windows安装:推荐https://python-xy.github.io/downloads.html首页下载安装,比较大,耗时较长。  https://www.python.org/downloads/   有标准安装版本。

3,如在Windowds命令行使用python那么你需要进行环境变量,点击控制面板->系统->高级->环境变量。在“系统变量”表单中点击叫做PATH的变量,然后编辑这个变量,把你安装的python路径添加如(;D:\Python27)。然后重新打开命令行即可

4,安装编辑器 (Vim、Sublime Text、 Pycharm、Wing、Eclipse with PyDev)等等,比较多编辑,以下我们都用Pycharm编辑器(http://www.jetbrains.com/pycharm/  )

注意: Python3在网络等方面有较大的改进、与python2不兼容。但是有一些外部库还不支持Python3,通常安装python2比较好。


解释器

解释器的操作有些像Unix Shell:当标准输入连接到tty设备时,它读取并以交互方式执行命令;当文件名参数或以文件作为标准输入设备时,它读取并执行文件中脚本。

调用python解释器

Python的解释器在linux上通常安装在/usr/bin/python,/usr/local/bin/python,/usr/local/bin/python等地方。Windows一般位于C:\Python27,且一般需要设置PATH环境变量。

# python
Python 2.7.5 (default, Nov 20 2015, 02:00:19) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>


退出解释器:统一的方式:quit() 或者exit()。


解释器的操作有些像Unix Shell:当标准输入连接到tty设备时,它读取并以交互方式执行命令;当文件名参数或以文件作为标准输入设备时,它读取并执行文件中脚本。 启动解释器的第二个方法是python -c command [arg] ...,执行command中的语句,等同于Shell的-c选项。因为Python语句通常会包括空格或其他shell的特殊字符是特殊的外壳,建议使 把command放在单引号中。注意因为缩进原因,开始的引号后面不能有空格。

# python -c "print 'Hello'"
Hello
# python -c 'print "Hello"'
Hello

一些Python模块也作为脚本使用:python -m module [arg] ...。

使用脚本文件时,-i参数可以进入交互模式。

比如有test.py文件如下:

print("Hello")
print("World!")

执行:

$ python -i test.py
Hello
World!
>>>

交互模式

当tty读取命令时解释器为交互模式。主命令提示符为(>>>),从命令提示符(...)用于续行。

当启动python时候,会出现如下相似提示:这就是交互式Python解释器

Python 2.7.9 (default, Dec 10 2014, 12:28:03) [MSC v.1500 64 bit (AMD64)] on win
32
Type "help", "copyright", "credits" or "license" for more information.
>>>

输入

>>> print "hello! Python"

按Enter时就会输出下面结果:

hello! Python

如果写些这样的内容:

>>>  hello1! This is Python
  File "<stdin>", line 1
    hello1! This is Python
    ^
IndentationError: unexpected indent

明显,解释器不明白输入的内容,且指出了什么地方错误。


数字和表达式

解释器像简单的计算器:可以输入表达式,它会返回值。表达式语法很简单:运算符 + , - , * 和 / 与其它语言一样(例如Pascal或C);括号用于分组。例如:

>>> 2 + 2
4
>>> 50 - 5*6
20
>>> 20/5*3
12
>>> 10/2.5
4.0

"/" 的返回类型取决于操作数。如果两个操作数都是int类型返回int。如果操作数有浮点数,执行并返回浮点数,取余使用%:

>>> 16/3
5
>>> 16/3.0
5.333333333333333
>>> 16%3
1

"**"表示乘方:

>>> 5 ** 2
25
>>> 2**4
16

等号( '=' )用于给变量赋值:

>>> a = 2
>>> b = 4
>>> a * b
8

同一值可以同时赋给几个变量:

>>> x = y = z =0
>>> x
0
>>> y
0
>>> z
0

变量在使用前必须"定义"(赋值),否则会出错:

>>> d
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'd' is not defined

在Python中有4种类型的数——整数、长整数、浮点数和复数。

 1、 2 、 3 是一个整数int 范围在(-2147483648 <= X <= 2147483647)

长整数就是比较大的数字long一般在后面加上L(1000000000000L)

2.65、3.6等就是浮点数float 

复数(6+5.2j)一般用j来表示


字符串

字符串可以包含在单引号或双引号中。

>>> 'This is 100msh'
'This is 100msh'
>>> "Hello! Shenzhen"
'Hello! Shenzhen'
>>> "\"Yes,\" he said."
'"Yes," he said.'

字符串前面添加'r'表示原始字符串,里面的反斜杠不会转义:

>>> print 'C:\soft\awk'
C:\softwk
>>> print r'C:\soft\awk'
C:\soft\awk

跨行的字符串多使用三引号,即三个单引号或者三个双引号:

>>> print """hello!
... can you help me?
... """
hello!
can you help me?


Unicode字符串

Unicode 是书写国际文本的标准方法。当你在处理文本的时候使用Unicode字符串,特别是当你知道这个文件含有用非英文的语言文本。

创建Unicode字符串:

>>> u'hello world!'
u'hello world!'
>>> u'Hello\u0020World !'
u'Hello World !'

转义序列\u0020表示插入编码为0x0020(空格)的Unicode 字符。

变量

变量基本上就是代表或引用某值的名字,如:希望用 X 代表 3,执行如下:

>>> x = 3

这操作称为赋值, 3 赋给了变量X


数据结构:(列表、元组、字典)

列表

Python有一些复合数据类型,用于组合值。最常用的是 list(列表)),为中括号之间的逗号分隔的值。列表的元素可以是多种类型,但是通常是同一类型。一般用[]表示

>>> squares = [1, 4, 9, 16, 25]
>>> squares
[1, 4, 9, 16, 25]

像字符串和其他序列类型,列表可支持切片和索引:

>>> squares[0]  # indexing returns the item
1
>>> squares[-1]
25
>>> squares[-3:]  # slicing returns a new list
[9, 16, 25]


列表还支持连接:

>>> squares + [36, 49, 64, 81, 100]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]


字符串是不可改变的,列表是可变的。

>>> cubes = [1, 8, 27, 65, 125] 
>>> cubes[3] = 64  
>>> cubes
[1, 8, 27, 64, 125]

append()方法可以添加元素到尾部:

>>> cubes.append(216)  
>>> cubes.append(7 ** 3)  
>>> cubes
[1, 8, 27, 64, 125, 216, 343]

也可以对切片赋值,此操作甚至可以改变列表的尺寸

>>> letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
>>> letters
['a', 'b', 'c', 'd', 'e', 'f', 'g']
>>> # replace some values
>>> letters[2:5] = ['C', 'D', 'E']
>>> letters
['a', 'b', 'C', 'D', 'E', 'f', 'g']


元组

元祖和列表十分类似,只不过是元祖和字符串是一样不可变的(不能修改元组)。通常元组是圆括号中用逗号分割项目的定义。

>>> tup2 = (1, 2, 3, 4, 5 )
>>> tup2
(1, 2, 3, 4, 5)

元组中的元素值是不允许修改的,

>>> t1 = (1,2)
>>> t2 = (3,4)
>>> t1[0] =10
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

但我们可以对元组进行连接组合,如下实例:

>>> t1 = (2,3)
>>> t2 = (5,6)
>>> t3 = t1 + t2
>>> t3
(2, 3, 5, 6)

元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组,如下实例:

>>> t4 = ('d2','dd',34)
>>> t4
('d2', 'dd', 34)
>>> del t4
>>> t4
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 't4' is not defined

因为元组也是一个序列,所以我们可以访问元组中的指定位置的元素,也可以截取索引中的一段元素,如下所示:

>>> tup = (1,2,3,4,5,6)
>>> tup[0]
1

字典

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:

 d = {key1 : value1, key2 : value2 }

>>> dict  = {'he':1, 'dd':'s'}
>>> dict
{'dd': 's', 'he': 1}

 访问字典里面的值

>>> dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
>>> dict['Name']
'Zara'

向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例:

>>> dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
>>> dict['Age'] =15
>>> dict['City'] ='China'
>>> dict
{'City': 'China', 'Age': 15, 'Name': 'Zara', 'Class': 'First'}

能删单一的元素也能清空字典,清空只需一项操作。

显示删除一个字典用del命令,如下实例:

>>> dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
>>> del dict['Name']
>>> dict
{'Age': 7, 'Class': 'First'}
>>> dict.clear()
>>> dict
{}
>>> del dict
>>> dict
<type 'dict'>
>>> dict['Age']
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'type' object has no attribute '__getitem__'

-----------------------------

一个请求实例

# !/usr/bin/env python
# coding:utf-8
import requests
import hashlib
import random
import json
import time
class Transaction(object):
    def __init__(self):
        random_num = random.randint(10000000, 99999999)
        key = '100MSH'
        device_mac = '84:82:f4:1c:f9:80'
        print device_mac
        md5 = hashlib.md5(device_mac + str(random_num) + key).hexdigest()
        url = 'xxxxxxx/cloud/auth?device_id=0755A00002&device_mac={0}&manufacturer=zkxy&random={1}&device_model=BHU&firmware_version=100MSHBHU2S_R_2.3.2&md5={2}'.format(device_mac, random_num, md5)
        result = requests.get(url)
        result_dict = json.loads(result.text)
        print result_dict        
        self.session = result_dict['session']

    def run(self):
        url = 'xxxxxxx/cloud/status?device_id=44060430603381&device_mac=84:82:f4:1c:f9:80&session={0}'.format(self.session)
        arg = {
            "Device.Users": [
                {
                    "HostName": "android-118c77ffa30925ff",
                    "IP": "192.168.11.162",
                    "MAC": "44:91:db:37:35:50",
                    "Upload": "0",
                    "Download": "0",
                    "Verify": "0",
                    "Time": "13:29:52",
                    "UpTime": "",
                    "DownTime": ""
                },
                {
                    "HostName": "android-3768e16f1a538290",
                    "IP": "192.168.11.168",
                    "MAC": "68:3E:34:36:46:85",
                    "Upload": "0",
                    "Download": "0",
                    "Verify": "0",
                    "Time": "13:29:52",
                    "UpTime": "",
                    "DownTime": ""
                },
                {
                    "HostName": "android-208c77ffa64965ff",
                    "IP": "192.168.11.161",
                    "MAC": "1C:99:4C:B3:0D:4C",
                    "Upload": "0",
                    "Download": "0",
                    "Verify": "0",
                    "Time": "13:29:52",
                    "UpTime": "",
                    "DownTime": ""
                },
                {
                    "HostName": "android-a5382903768e16f1",
                    "IP": "192.168.11.161",
                    "MAC": "00:DB:DF:83:6D:9B",
                    "Upload": "0",
                    "Download": "0",
                    "Verify": "0",
                    "Time": "13:29:52",
                    "UpTime": "",
                    "DownTime": ""
                },
            ]
        }
        result = requests.post(url, data=arg)
        print result.text
if __name__ == '__main__':
    trans = Transaction()
    trans.run()

---------------------------------------------------

Selenium web自动化简单实例  (centos7)

1、安装python环境(建议2.7.xx)

2、安装setuptools   yum -y install python-setuptools

3、安装pip    yum -y install epel-release    yum -y install python-pip

4、安装selenium   pip install selenium


windowds

1、安装python环境 (建议2.7.xx)

2、安装setuptools  (下载 https://bootstrap.pypa.io/ez_setup.py 保存为 ez_setup.py)执行此文件 python ez_setup.py 即可 (如果有则忽略)

3、安装pip  https://pypi.python.org/pypi/pip#downloads 下载完成之后,解压到一个文件夹,用cmd进入控制台,却换到解压的文件夹下 用命令安装 (python setup.py install)

4、安装selenium   pip install selenium


简单的实例

------------

# !/usr/bin/env python
# coding:utf-8
from selenium import webdriver
from selenium.webdriver.support.ui import Select
import time
browser = webdriver.Firefox()
browser.get("http://ypt2.bmjy.com/")
time.sleep(2)
browser.maximize_window()
browser.find_element_by_id("username").send_keys("xx")
browser.find_element_by_id("password").send_keys("xx")
time.sleep(8)
browser.find_element_by_id("btnSubmit").click()
browser.implicitly_wait(3)
title = browser.title
if title == u"百米千里眼 V2":
    print "success! %s" % title
else:
    print "error! %s" % title
time.sleep(2)
browser.find_element_by_class_name('sub-menu').find_element_by_link_text(u'设备').click()
browser.implicitly_wait(5)
for i in range(0, 1000):
    js = "var q=document.documentElement.scrollTop={0}".format(i)
    browser.execute_script(js)
url = 'http://ypt2.bmjy.com/statistics/index.jsp'
print "back to %s" %(url)
browser.back()
time.sleep(1)
browser.find_element_by_xpath(".//*[@id='statChartType']/li[3]/label").click()
time.sleep(2)
browser.find_element_by_id('betweenTab').find_element_by_link_text(u'最近七日').click()
time.sleep(2)
browser.find_element_by_xpath('//div[2]/div[1]/div/ul/li[3]/a').click()
time.sleep(1)
browser.find_element_by_class_name('slimScrollDiv').find_element_by_link_text(u'设备').click()
time.sleep(2)
browser.find_element_by_class_name('keyword').send_keys('80')
time.sleep(2)
# browser.find_element_by_xpath(".//*[@id='formSearch']/div[1]/div/div[2]/button[1]").click()
browser.find_element_by_xpath(".//form[@id='formSearch']/div[1]/div/div[2]/button[1]").click()
time.sleep(1)
browser.find_element_by_xpath(".//form[@id='formSearch']/div[1]/div/div[2]/button[2]").click()
for i in range(0, 2):
    browser.find_element_by_name('agencyName').send_keys(u'百米')
    time.sleep(2)
    browser.find_element_by_name('macs').send_keys('C8:EE:')
    time.sleep(2)
    browser.find_element_by_name('shopName').send_keys(u'中科')
    time.sleep(1)
    # browser.find_element_by_id('modelId').click()
    # time.sleep(1)
    Select(browser.find_element_by_id('modelId')).select_by_value("12")
    js = "var q=document.documentElement.scrollTop=0"
    browser.execute_script(js)
    time.sleep(2)
    Select(browser.find_element_by_name('devStatus')).select_by_value("0")
    js = "var q=document.documentElement.scrollTop=0"
    browser.execute_script(js)
    time.sleep(2)
    Select(browser.find_element_by_name('stock')).select_by_value("2")
    js = "var q=document.documentElement.scrollTop=0"
    browser.execute_script(js)
    time.sleep(2)
    Select(browser.find_element_by_id('versionName')).select_by_value("100MSHBHU2S_R_2.2.3")
    js = "var q=document.documentElement.scrollTop=0"
    browser.execute_script(js)
    time.sleep(2)
    if i == 0:
        time.sleep(3)
        browser.find_element_by_xpath(".//*[@id='formSearch']/div[1]/div/div[2]/button[3]").click()
        time.sleep(5)
    else:
        time.sleep(3)
        browser.find_element_by_xpath(".//*[@id='formSearch']/div[1]/div/div[2]/button[1]").click()
time.sleep(2)
browser.find_element_by_xpath('//div[2]/div[1]/div/ul/li[4]/a').click()
time.sleep(1)
browser.find_element_by_class_name('slimScrollDiv').find_element_by_link_text(u'设备入库').click()
time.sleep(3)
browser.quit()

-----------------------------

python self

python类的方法和普通的函数的一个最大的区别就是在类中的方法必须有一个额外的参数——self,而且是第一个参数。当然了,这个只是显式的表现出来,在调用的时候不必给这个参数进行赋值。

调用类方法的时候,他会默认给你的参数增加一个变量进行初始化self。

class Test:

      def add(self):
          x = 11
          y = 12
          return x + y

trans = Test()
print trans.add()

上面你有一个类称为Test和这个类的一个实例trans。当你调用这个对象的方法trans.add(self)的时候,这会由Python自动转为Test.run(trans,self)——这就是self的原理了

这个就是函数
def add(a,b):
    print (a+b)
add(1,2)


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

整理python教程

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

整理python教程

python简介Python是一门简单易学,功能强大的编程语言。它具有高效的高层次数据结构,简单但有效的方式支持面向对象编程,语法优雅,动态类型,解释执行。使之成为多数平台上很多领域的脚本和快速应用开发的理想语言。它的设计理念强调代码的可读
2023-01-31

W3School 教程整理

离线版大部分整理自 w3cschool ,少部分整理自 w3school ,由本人整理。感谢 w3cschool 站长的无私奉献。由于本人精力有限,此处的列表不一定能够及时更新,最新版本请到本人博客查看。AngularJS教程最后更新:20
2023-01-31

AsyncTask官方文档教程整理

简介Android给我们提供了一种轻量级的异步任务类AsyncTask。该类中实现异步操作,并提供接口反馈当前异步执行结果及进度,这些接口中有直接运行在主线程中的(如 onPostExecute,onPreExecute等)。AsyncTa
2023-05-31

几个整蛊的Python程序方法教程

本篇内容主要讲解“几个整蛊的Python程序方法教程”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“几个整蛊的Python程序方法教程”吧!无聊程序之一while True: n = in
2023-06-15

【Spring Boot整合MyBatis教程】

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力
2023-08-18

Android Admob接入原理及完整教程示例

这篇文章主要为大家介绍了Android Admob接入原理及完整教程示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
2022-12-19

Python学习教程:Python字典处理

Python字典处理1、根据键访问值普通访问实例:info={"name":"Mark","age":18}print("我的姓名:%s"%info["name"])#如果没有指定的键,就会报错print(info["sex"])结果:我的
2023-06-02

Python核心编程答案(自整理)

2–10.带循环和条件判断的用户输入 使用raw_input()函数来提示用户输入一个1和100之间的数,如果用户输入的数满足这个条件,显示成功并退出。否则显示一个错误信息然后再次提示用户输入数值,直到满足条件为止。#!/usr/bin/e
2023-01-31

python串口编程整理(更新完)

python的串口网上有很多例子,这里了只是把认为好的整理到一起。首先,应该安装serial模块,还能开始后续的操作。我用的python2.6,serial模块可以在这里下载安装serial模块下载1,字符串的发送接收短接串口的2、3脚,创
2023-01-31

Python模块整理(五):多进程mul

线程共享全局状态,进程完全独立。线程局限在一个处理器,线程可以发挥多个处理器的资源.没有找到processing模块只找到multiprocessing#!/usr/bin/env pythonfrom multiprocessing im
2023-01-31

Python模块整理(六):守护进程

守护进程三个特征:在后台运行,与启动它的进程脱离,无须控制终端。>>> def run(program, *args):...     pid = os.fork()...     if pid==0:#pid==0为在子进程内 在子进程内
2023-01-31

SpringBoot整合Zookeeper详细教程

Curator是Netflix公司开源的⼀套zookeeper客户端框架,Curator是对Zookeeper⽀持最好的客户端框架。Curator封装了⼤部分Zookeeper的功能,⽐如Leader选举、分布式锁等,减少了技术⼈员在使⽤Zookeeper时的底层细节开发⼯作
2022-12-23

python日记整理

python渣渣学习之路python插件插件+pycharm基本用法+markdown文本编写+jupyter notebook的基本操作汇总一.计算机基础1.什么是编程,计算机组成2.程序语言二.变量1.变量的概念2.python的回收机
2023-01-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录