long8:率先篇小说,Python之函数计算
分类:long8

  自个儿是叁个热爱C#的程序员,来自青海毕节,以往温哥华寻梦。

    c、abs--取绝对值

实际怎么封装>打开

工具

python-3.6.4-amd64.exe:

pywin32-222.win-amd64-py3.6.exe:

PyInstaller-3.3.1.tar:

 

  兴趣爱好的话,就更宽广了,诗酒花茶都风野趣,乒乓斯诺克倒也长于,编制程序吹嘘更是最爱。

         3、动态传参*tup,**dic

 

本文首要记录为史振华在尝试调换PY文件为EXE文件进程中各样郁结和终极解决方法,尝试了PYTHON 2.7/3.5/3.6及其有关信赖pywin32-222.win32/pywin32-222.win-amd64。特别多谢IT笔记若能更早看过此文很有助于,互连网有大气有关作品但与本身实际中杰出的不等。系统蒙受:Win7 Enterprise SP1/ intel i5-4310M CPU /System type:64-bit OS。2018/2/13

方法

简单说明

close()
关闭当前浏览器窗口
back()
后退一步
forward()
前进一步
get(url)
访问URL并加载网页到当前的浏览器会话
maximize_window()
最大化浏览器窗口
quit()
退出当前的驱动实例并关闭所有相关窗口
refresh()
刷新当前页面
implicitly_wait()
等待时间,单位为秒
set_page_load_timeout()
设置一个页面完全加载完成的超时等待时间,单位为秒
set_script_timeout()
设置脚本执行的超时时间

  学得很杂,未来HTML,CSS,JS,SQL都会有的,python,php,c语言这些都有过摸底,不知晓如果最后目标是想成为网络安全地点顾问的话,本领树该怎么点?

           1、在局地调用:局地命名空间->全局命名空间->内置命名空间

data为已打包好的xml数据

方法/步骤

运转python-3.6.4-amd64.exe,CPU是INTEL i5见到英特尔64稍稍有些别扭,能选都选上路线都不改完结安装。确定PATH:Computer-System Properties-Advanced-Environment Variables...如:D:usersf29691aAppDataLocalProgramsPythonPython36。注意后续pywin32的版本需一样,PYTHON其余版本本身也能成就安装可最终安装PyInstaller或pywin32时报错不能顺遂安装。

运维pywin32-222.win-amd64-py3.6.exe 安装中其会质量评定已设置的python版本,独有看见成功安装才有用。

解压PyInstaller-3.3.1.tar至D:根目录下,运行命令行CMD踏向此目录,

//步向子目录 bootloader

cd bootloader

//build the bootloader 运行

python ./waf configure build install

//重新步向根目录

cd ..

//安装pyinstaller

python setup.py install

//from

#KEY#:安装中Reading : Could not find suitable distribution forRequirement.parse('future')可在浏览器中张开上述网址明确链接平时后CMD中另行python setup.py install,亲测使用邮电通讯手提式有线电话机开销路好给PC成功安装。

CMD至pyinstaller安装路线:pyinstaller --version命令

 D: PyInstaller-3.3.1>pyinstaller --version

3.3.1若特别会来得各样缺少文件和语法错误。

CMD至pyinstaller安装路线,尝试转化叁个简易的*.PY成*.exe:

pyinstaller -F D:PYTHONSHI.py

浮动的EXE文件会被归档到子文件夹dist中。

(三)  WebElement作用及艺术

  现阶段的目的是弹无虚发领悟C#及网址开采,接着想朝互联网安全方向前行,不清楚安插有未有毛病,真的愿意大佬的指引,最棒能收下大哥,打工求学皆可。

            1、闭:内部函数

 1     public string get(string data) 
 2        {
 3             string cert = @"D:certificateapiclient_cert.p12"; //证书位置
 4             string password = "11100011";//证书密码
 5             string url = "https://api.mch.weixin.qq.com/secapi/pay/refund";//请求地址
 6             ServicePointManager.ServerCertificateValidationCallback=new 
 7             RemoteCertificateValidationCallback(CheckValidationResult); 
 8             X509Certificate cer = new X509Certificate(cert, password); 
 9             HttpWebRequest webrequest = (HttpWebRequest)HttpWebRequest.Create(url); 
10             webrequest.ClientCertificates.Add(cer);
11             byte[] bs = Encoding.UTF8.GetBytes(data);
12 
13             webrequest.Method = "POST";
14             webrequest.ContentType = "application/x-www-form-urlencoded";
15             webrequest.ContentLength = bs.Length;
16             //提交请求数据
17             Stream reqStream = webrequest.GetRequestStream();
18             reqStream.Write(bs, 0, bs.Length);
19             reqStream.Close();
20             //接收返回的页面,必须的,不能省略
21             WebResponse wr = webrequest.GetResponse();
22             System.IO.Stream respStream = wr.GetResponseStream();
23             System.IO.StreamReader reader = new System.IO.StreamReader(respStream, System.Text.Encoding.GetEncoding("utf-8"));
24             string t = reader.ReadToEnd();
25             System.Web.HttpContext.Current.Response.Write(t);
26             wr.Close();
27 
28             return t;
29             
30 
31 
32             }
33 
34         private static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
35         {
36             if (errors == SslPolicyErrors.None)
37                 return true;
38             return false;
39         }

原料

SHI.PY :作用为转变EXCEL文件名称为AWL文件名内容未定。

import os;
print("Hello, World!");
#file_path=os.getcwd();
sourcefile=input("Drap *.xls to this window");
file_name=sourcefile+'.awl'
content='Hellon,Worldt'
print(content);
print(file_name);
if os.path.exists(file_name):
    os.remove(file_name);
F=open(file_name,'a+');
F.write(content);
F.write(":D");
F.close();
input();

 

  满是大佬的田园,第3回演说正是豪门期望的萌新提问和求拜师,请有意向者速速联系。

long8 1long8 2

微信退款须要表明

(四)  操作表单、文本框、复选框、单选按键

  

         3、动态参数

 

  第一次发博客,能报名到园子的一方天地,真的欢畅,感激园主。

       a、闭包分为:

 

职位参数

透过WebElement完结与各样HTML控件的自动化交互,比如在叁个文本框输入文本、单击按钮、选用单选框或然复选框、获取成分的文书及属性值等。

      b、可迭代公约——凡是可迭代的中间都有一个__iter__方法

 

long8 3long8 4

比如说,能够选取上边包车型的士法子检查新浪登陆页面包车型大巴复选框是或不是被选中

            2、局地命名空间

 1 def test_login(self):
 2 
 3     …省略打开登录页面的代码(这段就不注释了#)
 4 
 5     automatic_login = self.driver.find_element_by_id('remember_me')
 6 
 7     #检查登录页面复选框,是否默认不被选中
 8 
 9     self.assertFalse(automatic_login.is_selected())
10 
11     #点击选中复选框
12 
13     automatic_login.click()

       a、第一种:推断在那之中是还是不是完毕了 __next__** long8:率先篇小说,Python之函数计算。**

(二)  WebDriver功用及措施

逐一:地方参数、*args、暗中认可参数、**kwargs

 1 def test_register_new_user(self):
 2 
 3     #定位并点击博客园首页的 注册 
 4 
 5     login_area = self.driver.find_element_by_css_selector('#login_area')
 6 
 7     register = login_area.find_element_by_link_text('注册')
 8 
 9     register.click()
10 
11     #检查打开的网页标题是不是'用户注册 - 博客园'
12 
13     self.assertTrue('用户注册 - 博客园' == self.driver.title)
14 
15     # 定位注册页面各个字段及注册按钮
16 
17     user_email = self.driver.find_element_by_id('Email')
18 
19     user_login_name = self.driver.find_element_by_id('LoginName')
20 
21     register_btn = self.driver.find_element_by_id('submitBtn')
22 
23     # 检查字段允许的最大输入字符与最小输入字符是否与预期一致
24 
25     self.assertEqual('2', user_login_name.get_attribute('data-val-length-min'))
26 
27     self.assertEqual('30', user_login_name.get_attribute('data-val-length-max'))
28 
29     # 检查各个字段及按钮对用户是否可见及可用
30 
31     self.assertTrue(user_email.is_displayed() and user_email.is_enabled())
32 
33     # 输入用户信息
34 
35     user_email.send_keys('test@163.com')
36 
37     user_login_name.send_keys('test')
38 
39     # 点击注册按钮
40 
41     register_btn.click()
42 
43     # 检查是否显示注册成功的提示
44 
45     self.assertTrue(self.driver.find_element_by_css_selector('p.txt-title.success-color').text == '注册成功')
menu = {
    '北京': {
        '海淀': {
            '五道口': {
                'soho': {},
                '网易': {},
                'google': {}
            },
            '中关村': {
                '爱奇艺': {},
                '汽车之家': {},
                'youku': {},
            },
            '上地': {
                '百度': {},
            },
        },
        '昌平': {
            '沙河': {
                '老男孩': {},
                '北航': {},
            },
            '天通苑': {},
            '回龙观': {},
        },
        '朝阳': {},
        '东城': {},
    },
    '上海': {
        '闵行': {
            "人民广场": {
                '炸鸡店': {}
            }
        },
        '闸北': {
            '火车战': {
                '携程': {}
            }
        },
        '浦东': {},
    },
    '山东': {},
}

def threeLM(menu):
    for key in menu:
        print(key)
    k = input(">>>")
    if k in menu:
        threeLM(menu[k])

threeLM(menu)

(这里只是比方哈,直接复制是没用的,下边包车型客车代码只固定部分字段(邮箱、登入名和登记按键),何况未有拍卖验证码,验证码部分今后再商量怎么管理)

     a、实参:调用函数的时候传出的参数

功能/属性

简单说明

size
获取元素大小(例如element.size)
下面都是以这种方式,element指定位的某个元素
tag_name
获取标签的名称
text
获取元素的文本值
from collections import Iterable  #可迭代
from collections import Iterator  #迭代器
isinstance(o,Iterable)
isinstance(o,Iterator)

方法

简单说明

clear()
清除文本框或文本域的内容
click()
点击元素
get_attribute(name)
获取元素的属性值,name:要获取的属性名称
is_displayed()
检查元素对于用户是否可见
is_enabled()
检查元素是否可用
is_selected()
检查元素是否被选中,主要用于单选框和复选框
send_keys(value)
输入文本,value是要输入的值
submit()
提交表单。如果对元素使用,将会提交该元素所属的表单
value_of_css_property(property_name)
获取CSS属性的值, property_name是CSS属性的名称

 可迭代和迭代器的分化点 : 迭代器多达成了三个__next__方法

 

生成器函数

 

       b、第二种

(一)  WebDriver

def func():
    print('aaaa')
    a = 1
    yield a    #返回第一个值
    print('bbbb')
    yield 12   #返回第二个值
ret = func()  #拿到一个生成器
print(ret)
print(next(ret)) #取第一个值
print(next(ret)) #取第二个值
print(next(ret)) #取第三个值 会报错 因为没有第三个值

功能/属性

简单说明

current_url

获取当前页面的URL地址(driver.current_url)
下面的都是以这种方式,driver指浏览器驱动实例。
window_handle
获取当前窗口的句柄
name
获取该实例底层的浏览器名称
orientation
获取当前设备的方位
page_source
获取当前页面源代码
title
获取当前页面的标题
window_handles
获取当前会话里所有窗口的句柄

              a、*args

WebDriver提供多数用来与浏览器交互的效率和安装,通过WebDriver的功效和一部分艺术,来落实与浏览器窗口、警示、框架和弹出窗口的交互,它也提供了自动化操作浏览器导航栏、设置cookies、截屏等有利大家测量检验的风味。

20、判别迭代器和可迭代的艺术 

    通过WebElement能够兑现与网址页面成分的互动,包罗文本框、文本域、开关、单选框、多选框、表格、行、列和div等。

l =[i*i for i in range(100)]
print(l)

比如,新浪注册功用的自动化:

ret = eval("1 + 3")  

print(ret)  

结果:4 

 

n*n

  g、map  无论是map依然filter,得到的结果都以可迭代的指标,迭代器的实例

默许参数

         2、默许参数

   g、pow(x,y) ----就是求x的y次方

def age(n):
    if n == 1:
        return 40
    else:
        ret = age(n-1)
        return ret + 2
age(5)

      a、意在以此数据类型里的东西也足以选取for被多个八个的收取来,那大家就亟须满意for的渴求

 

View Code

long8 5long8 6

 

def ddd(**kwargs):
    print(kwargs)

 ddd(k = 'a',j = 'b')#按关键字传参数

                           '__next__' in dir(o)

动态参数

def aaa(a,b):
    print(a,b)
aaa(1,2)

回去一个值

     b、参数----站在调用函数的角度上

long8 7long8 8

本文由long8发布于long8,转载请注明出处:long8:率先篇小说,Python之函数计算

上一篇:没有了 下一篇:没有了
猜你喜欢
热门排行
精彩图文