IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 到底是Go+还是狗屁?-- 基础语法学习(附go/go+/python示例) -> 正文阅读

[Python知识库]到底是Go+还是狗屁?-- 基础语法学习(附go/go+/python示例)


注释

Go/Go+注释

// 单行注释
/*
多行注释
*/

Python注释

# 单行注释
"""
多行注释
"""

数据类型

  • 布尔型:布尔型的值只可以是常量 true 或者 false。一个简单的例子:var b bool = true。
  • 整型:整型 int 和浮点型 float32、float64,Go +语言支持整型和浮点型数字,并且支持复数,其中位的运算采用补码。
  • 字符串:字符串就是一串固定长度的字符连接起来的字符序列。

Go+示例

// 布尔值
println true && false
println true || false
println !true

// 数值
println("1+1 =", 1+1)
println("7.0/3.0 =", 7.0/3.0)

// 字符串
println "Go"+"Plus"

基础变量类型

变量可以通过变量名访问。Go+ 语言变量名由字母、数字、下划线组成,其中首个字符不能为数字。

  • 指定变量类型,如果没有初始化,则变量默认为空值。

    • 数值类型(包括complex64/128)为 0
    • 布尔类型为 false
    • 字符串为 “”(空字符串)
  • 根据值自行判定变量类型。
    如果这个值在前面被 var 声明过的话会触发异常
    C:\Users\Lenovo\Desktop\go_test\hello.gop:1:15: expected declaration
    C:\Users\Lenovo\Desktop\go_test\hello.gop:61:12: expected ‘;’, found ‘:=’
    C:\Users\Lenovo\Desktop\go_test\hello.gop:74:2: expected ‘}’, found ‘EOF’
    */

Go+示例

// 指定变量类型,如果没有初始化,则变量默认为空值
var phone string = "11111"
println phone

// 布尔型
var bo bool
// 字符型
var by byte
// 无符号整型
var i int
// 无符号整型
var ui uint
// 浮点型
var f float64
// 字符穿
var s string
// 格式化输出
printf("%v %v %v %v %v %q\n", bo, by, i, ui, f, s)

// 根据值自行判定变量类型
phone1 := "11111"
println phone1

有理数

我们将有理数作为原生 Go+ 类型引入。
我们使用后缀r来表示有理文字。例如, (1r << 200) 表示一个 big int, 其值等于 2 200。4/5r 表示有理常数 4/5。
<<运算符,将一个运算对象的各二进制位全部左移若干位

println 1r << 200
println 4/5r  // 4/5
println 4/5  // 0

容器类型

集合

Go 示例

package main

import "fmt"

func main() {
    // 集合
    z := map[string]string{"m1": "1"}
    // 集合插入元素
    z["name"] = "不太灵光的程序员"
    z["age"] = "18"
    fmt.Println(z["name"])
    // 集合删除元素
    delete(z, "name")
    fmt.Println(z)
}

Go+ 示例
go+ 语法,简化使用 make 方法

x := {"m1": 1}
y := {"m1": 1, "m2": "go+!"}
z := {}

// 集合插入元素
z["name"] = "不太灵光的程序员"
z["age"] = 18
println z["name"]
// 集合删除元素
delete(z, "name")
println z
println x, y, z

Python 示例

x = dict(m1=1)
y = {"m1": 1, "m2": "go+!"}
z = {}

# 插入元素
z.update({"name": "不太灵光的程序员"})
z["age"] = 18
# 删除元素
z.pop("name")
print(x, y, z)

# 遍历字典
for k in z:
    print(z[k])

# 字典推导式
print({k: v for k, v in z.items()})

# 判断key是否存在
print("name" in z)

切片

Go 示例

package main

import "fmt"

func main() {
    x := []int{0,1,2,3,4,5}
    // 取索引3
    fmt.Println(x[3])
    // 取索引1-4不包含4
    fmt.Println(x[1:4])
    // 取索引1到最后
    fmt.Println(x[1:])
    // 同时添加多个元素
    x = append(x, 2,3,4)
    fmt.Println(x)

    // 切片遍历
    for i:=0; i < len(x); i++ {
        fmt.Println(x[i])
    }
}

Go+ 示例

x := [0, 1, 2, 3, 4] // []float64
y := [1+2i, "xsw"] // []interface{}
z := []

println x, y, z

// 取索引3
println x[3]
// 取索引1-4不包含4
println x[1:4]
// 取索引1到最后
println x[1:]
// 取索引0到倒数1个索引 不支持
// 切片反转  不支持
// 同时添加多个元素
x = append(x, 2,3,4)
println(x)

Python 示例

# 初始化列表
x = [0, 1, 2, 3, 4, 5]
# 取索引3
print(x[3])
# 取索引1-4不包含4
print(x[1:4])
# 取索引1到最后
print(x[1:])
# 取索引0到倒数1个索引
print(x[:-1])
# 切片反转
print(x[::-1])
# 同时添加多个元素
x.extend([2, 3, 4])
print(x)

# 插入元素
x.append(99)

# 删除元素
x.pop()
x.remove(4)

# 遍历字典
for v in x:
    print(v)

for i in range(len(x)):
    print(x[i])

# 推导式
print({v*v for v in x})

# 判断key是否存在
print(1 in x)

常量

常量是一个简单值的标识符,在程序运行时,不会被修改的量。
常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型。
显式类型定义: const b string = “abc”
隐式类型定义: const b = “abc”

Go 示例

package main
import (
    "fmt"
)
func main() {
	const WIDTH, LENGTH int = 5, 10
	area := LENGTH * WIDTH
	println area
	// 修改常量会抛出异常  VarRef *types.Const
	// WIDTH += 1
}

Go+ 示例

const WIDTH, LENGTH int = 5, 10
area := LENGTH * WIDTH
println area
// 修改常量会抛出异常  VarRef *types.Const
// WIDTH += 1

运算符

  • 算术运算符:加+、减-、乘*、除/、求余%、自增++、自减-
  • 关系运算符:==、!=、>、<、>=、<=、
  • 逻辑运算符:%%与、||或、!非
  • 位运算符:%与、|或、^异或、<<左移、>>右移
  • 赋值运算符:赋值运算符比较多 运算法都可以直接赋值,例如 += 相加后赋值
  • 其他运算符:& 取地址符、* 指针变量

语言条件语句

条件语句需要开发者通过指定一个或多个条件,并通过测试条件是否为 true 来决定是否执行指定语句,并在条件为 false 的情况在执行另外的语句。

Go 示例

package main
import (
    "fmt"
)
func main() {
    // if ... else
    const WIDTH, LENGTH int = 5, 10
    if WIDTH == LENGTH {
      fmt.Println("正方形")
    }else if WIDTH < LENGTH {
      fmt.Println("长方形1")
    }else{
      fmt.Println("长方形2")
    }

    // switch
    var grade string
    var marks int = 90

    switch marks {
      case 90: grade = "A"
      case 80: grade = "B"
      case 60,70 : grade = "C"
      default: grade = "D"
    }
    fmt.Println(marks, grade)
}

Go+ 示例

// if ... else
const WIDTH, LENGTH int = 5, 10
if WIDTH == LENGTH {
  println "正方形"
}else if WIDTH < LENGTH {
  println "长方形1"
}else{
  println "长方形2"
}

// switch
var grade string
var marks int = 90

switch marks {
  case 90: grade = "A"
  case 80: grade = "B"
  case 60,70 : grade = "C"
  default: grade = "D"
}
println marks, grade

Python 示例

# if ... else
WIDTH, LENGTH = 5, 10
if WIDTH == LENGTH:
    print("正方形")
elif WIDTH < LENGTH:
    print("长方形1")
else:
    print("长方形2") 

Lambda表达式

Go语言中的匿名函数 指的是不需要有名字的函数,通常定义在另外一个函数内部

Go 示例

package main
import (
    "fmt"
)
func main() {
    Sum := func(x, l int) (int) { return x + x }
    // 变量Sum作为匿名函数来使用,求和
    fmt.Println(Sum(50,10))
    return
}

Go+ 示例

// 并没看懂怎么用  触发异常了 undefined: Sum
Sum x, y => x + y
println(Sum(50,10))

Python示例

Sum = lambda x, y: x + y
print(Sum(10, 2))
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-12-07 11:59:03  更:2021-12-07 12:01:28 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 5:29:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码