本文实例讲述了go语言通过反射获取和设置结构体字段值的方法。分享给大家供大家参考。具体实现方法如下:复制代码 代码如下:type MyStruct struct {
N int
}
n := MyStruct{ 1 }
// get
immutable := reflect.ValueOf(n)
val := immutable.FieldByName("N").Int()
fmt.Printf("N=%d\n", val) // prints 1// set
mutable := reflect.ValueOf(&n).Elem()
mutable.FieldByName("N").SetInt(7)
fmt.Printf("N=%d\n", n.N) // p...
cleaned_data属性是调用了clean()方法之后才有的,如果在表单验证中使用 clean_字段名 方式定义了某个字段清洗函数,那么django会优先调用这个函数,最后调用clean()函数,如下:def clean_mobile(self): mobile = self.cleaned_data[‘mobile‘] #这样子写是错误的,这时cleaned_data属性并未生成
调用清洗函数,其实质就是将表单类型转化为python数据类型,假如表单中有两个字段,分别是mobile,password,在表单类中定...
工作之后第一次过年回家就碰到了武汉肺炎这个事情要在家办公很久 可能沟通效率会低一点这次在家要待很久 也算对父母的一种补偿吧毕竟大学我一共就有三个寒假在家 其他的假期不是在实习就是在训练不过要不是有这些假期的准备 也没我现在的工作和好朋友吧所以这大概也算因祸得福? 在家晚上安安静静的听歌还是很棒的2333 然后说说最近在家害改了一个有关时区的bug因为最近写了一个日报邮件的功能在每天凌晨五点给订阅人发送前一天的项...
如果通过shell访问mongo,要在secondary进行查询。会出现如下错误: [root@mongodb-secondary2 ~]# mongo
MongoDB shell version: 3.0.9
connecting to: test
abc:SECONDARY> show dbs
2016-02-20T02:13:18.527+0800 E QUERY Error: listDatabases failed:{ "note" : "from execCommand", "ok" : 0, "errmsg" : "not master" }有两种方法实现从机的查询:第一种方法:db.getMongo().setSlaveOk();第二种方法:r...
CODE:#!/usr/bin/python
# -*- coding: utf-8 -*-'''
Created on 2014-9-7
@author: guaguastd
@name: user_activity_loop.py
'''import json
from login import google_api_request
from html import cleanHtml
import osMAX_RESULTS = 40
while True:query = raw_input("Input query(None to quit): ")if query.strip() == '':breakpeople_feed = google_api_request(0, action='search', query=query)for user in people_feed[...
此类中实现了从crx文件获取扩展的Appid、获取manifest.json文件内容、将crx文件转换为一般zip文件 代码如下:<?php
class CrxParserException extendsException {}/*** Chrome crx 解析器,用于获取扩展、皮肤ID**/class CrxParser {const MAX_PUBLIC_KEY_SIZE = 65535;const MAX_SIGNATURE_SIZE = 65535;const HEADER_MAGIC_PREFIX = ‘Cr24‘;const CURRENT_VERSION = 2;private$fp = null; //文件指针private$filename = ‘...
中文长度,直接贴代码package mainimport ("fmt""unicode/utf8"
)func main() {aa := "猪头"bb := "12345"fmt.Println(utf8.RuneCountInString(aa),len(aa))fmt.Println(utf8.RuneCountInString(bb),len(bb))
} 原文:http://www.cnblogs.com/ziyouchutuwenwu/p/4802380.html
Django里面,我们知道可以在函数里面里面通过参数获取前端发来的数据。比如可以通过request获取各种form的值啊,cookie啊等等。
def index(reqeust):
# 获取当前已经登录的用户
v = reqeust.COOKIES.get(‘username111‘)
return render(reqeust,‘index.html‘,{‘current_user‘: v})这些方法是Django把一些常用的数据已经替我们封装好了,因此可以直接使用。但是这些方法并不全,比如我刷新一个页面,这个请求的头文...
使用Go语言编写Socks5代理自动获取程序package mainimport ("bytes""encoding/json""fmt""io""io/ioutil""net/http""net/url""strings""time"
)func main() {aLine := getone()for _, ipaddrport := range aLine {fmt.Println(ipaddrport)}
}//填写Token密钥
var token = ""func getone() []string {sUrl := "http://list.rola-ip.site:8088/user_get_ip_list"query := url.Values{}query.Add("token", token)query.Add("qty", "10...
前言为了便于精准排查问题,需要将当前的请求信息与当前执行的 SQL 信息设置对应关系记录下来,记录的 SQL 信息包括:执行 SQL 的当前时间;执行 SQL 的文件地址和行号;执行 SQL 的花费时长;执行 SQL 的影响行数;执行的 SQL 语句;数据库组件使用的是 GORM。思路1、在执行 SQL 前,设置开始执行时间(计算执行时长会用到);2、在执行 SQL 后,第一,获取当前请求的上下文,为什么获取上下文,因为需要从上下文中获取本次请求信...
通过在go中嵌入linux命令来获取cpuId,这样做,使该方法具有较高的可复用性,只用通过修改linux指令,就可以在程序中获取linux指令所能获取的任何信息。
运行结果以及完整的源码如下:package mainimport ("fmt""io/ioutil""os/exec"
)
type CommPack struct {//bytesdata bytebytesData []byte
}
func GET_CPUID() (CommPack,error){cmd := exec.Command("/bin/sh", "-c", `sudo dmidecode -t 4 | grep ID `)stdout, err := cmd.St...
第三方包下载
$ github.com/shirou/gopsutil
获取内存方面的信息package mainimport ("fmt""github.com/shirou/gopsutil/mem"
)func main() {v, _ := mem.VirtualMemory()fmt.Println(v)
}total // 内存大小
available // 闲置可用内存
used // 已使用内存
usedPercent // 已使用百分比获取cpu方面的信息package mainimport ("fmt""github.com/shirou/gopsutil/cpu"
)func main() {res, err := cpu.Times(false) // false是展示全...
在windows上执行有关系统设置命令的时候需要管理员权限才能操作,比如修改网卡的禁用、启用状态。双击执行是不能正确执行命令的,只有右键以管理员身份运行才能成功。为解决此问题,花了很长时间找了各种方法,最终找到一个简单的方法,双击也能执行成功了。过程如下:1> Go get github.com/akavel/rsrc2> 把nac.manifest 文件拷贝到当前windows项目根目录3> rsrc -manifest nac.manifest -o nac.syso4> go build
nac.mainfest的内...
1. 获取本机 IP 地址
package mainimport ("fmt""net"
)// 获取本机网卡IP
func getLocalIP() (ipv4 string, err error) {// var (// addrs []net.Addr// addr net.Addr// ipNet *net.IPNet // IP地址// isIpNet bool// )// 获取所有网卡addrs, err := net.InterfaceAddrs()if err != nil {return}// 取第一个非lo的网卡IPfor _, addr := range addrs {// 这个网络地址是IP地址: ipv4, ipv6ipNet, isIpNet := addr.(*net.IPNet...
直接上代码
type ApiRequest interface{}
//参数 e 一个空接口,f http请求连接, p 请求方式 参数为 “POST” 或 “GET”
func FromApiGetData(e *ApiRequest, f *PostUrl, p string) (string, error) {
jsons, errs := json.Marshal(e)
if errs != nil {
fmt.Println(errs.Error())
}
fmt.Println(string(jsons))
req, err := http.NewRequest(p, f.Url, bytes.NewBuffer([]byte(string(jsons))))
req.Header.Set("Content-T...