zoukankan      html  css  js  c++  java
  • go 与python的一些不同点

    1. golang可读性很强,与或对应&&, ||这也使得golang看起来更像传统编程语言,而不是python的or,and

    2. 很难修改字符串,需要的话就重排吧

    3. 字符串经常需要在string和[]byte之间来回转换,数字转字符串必须用strconv

    4. if,else,elif必须和配对的 { 在同一行

    5. 无时无刻不在使用自定义的struct,初始化结构体要用,json转成数据结构也要用,如果json转成的是复合结构还要嵌套struct,很多时候strcut来当python中的map用

    6. 定义type test struct,想得到一个test的数组,要使用[]*test,而不是[]test

    7. struct及其里面的元素的首字母要大写,不然很可能访问不到

    8. golang的map比python难用多了,没有dict.keys(),没有dict.values(),想把map转成别的结构只能遍历map

    9. 声明并赋值使用:=

    10. 没有set,没有tuples,要经常使用slices

    11. 没有__getattr,要经常检查是否存在

    12. 引用的包,声明的变量必须都的使用,不然编译都无法通过

    13. 数组没有[:-1]、[::-1]、a,b,c=[1,2,3]这些灵活的用法

    14. 如果能确定函数返回的类型,就不要用interface{},哪怕结构很复杂,也要使用strcut来返回。如果返回interface{},那么string(),for遍历这些基础用法都没法使用了

    15. 空指针是nil,python中的None在golang用nil代替,经常写err != nil判断是否出错

    就想到这么多,希望对大家有所帮助~

  • 相关阅读:
    vue-cli常用配置
    浏览器进程线程时间循环、与vue netTick的实现原理
    WebSocket的兼容性
    hiper、sitespeed性能工具
    excel操作
    performance面板使用,以及解决动画卡顿
    axios设置了responseType: 'json‘’,ie问题
    docker服务重启
    Spring Boot AOP之对请求的参数入参与返回结果进行拦截处理
    python中几种单例模式的实现
  • 原文地址:https://www.cnblogs.com/treasure716/p/9668629.html
Copyright © 2011-2022 走看看