文件最后提交记录最后更新时间
4 个月前
4 个月前
4 个月前
4 个月前
4 个月前
4 个月前
4 个月前
README

【文言心】示例代码

各种功能的示例代码集合

目录

  1. 基本运算
  2. 列表操作
  3. 高阶函数
  4. 字符串操作
  5. 控制结构
  6. 同像性
  7. 综合示例

基本运算

算术运算

# 加法
1加2。              # → 3

# 减法
10减3。             # → 7

# 乘法
5乘4。              # → 20

# 除法
20除4。             # → 5

# 取模
模10 3。            # → 1
模17 5。            # → 2

比较运算

# 等于
5等5。              # → 真
5等3。              # → 假

# 大于
10大5。             # → 真
3大5。              # → 假

# 小于
3小5。              # → 真
10小5。             # → 假

逻辑运算

# 逻辑与
真且真。            # → 真
真且假。            # → 假

# 逻辑或
假或真。            # → 真
假或假。            # → 假

# 逻辑非
非真。              # → 假
非假。              # → 真

管道操作

# 两步管道
10加5,乘2。        # → 30

# 三步管道
10加5,乘2,除3。   # → 10

# 多步管道
100加50,除2,乘3,减25。  # → 175

列表操作

创建列表

# 基本列表
列1 2 3。           # → (1 2 3)

# 较长列表
列1 2 3 4 5 6 7 8 9 10。  # → (1 2 3 4 5 6 7 8 9 10)

# 空列表
列。                # → ()

访问元素

# 首元素
列1 2 3,首。       # → 1
列10 20 30,首。    # → 10

# 余元素
列1 2 3,余。       # → (2 3)
列1 2 3 4 5,余。   # → (2 3 4 5)

# 索引取值
入0列1 2 3。        # → 1
入1列1 2 3。        # → 2
入2列1 2 3。        # → 3

链式操作

# 取第二个元素
列1 2 3,余,首。   # → 2

# 取第三个元素
列1 2 3 4 5,余,余,首。  # → 3

# 取最后一个元素
列1 2 3 4 5,余,余,余,余,首。  # → 5

高阶函数

映射(皆)

# 全部乘2
列1 2 3,皆乘2。    # → (2 4 6)

# 全部加10
列1 2 3,皆加10。   # → (11 12 13)

# 全部平方
列1 2 3 4,皆乘列1 2 3 4。  # → (1 4 9 16)

过滤(只)

# 过滤大于3的数
列1 2 3 4 5,只大3。    # → (4 5)

# 过滤小于3的数
列1 2 3 4 5,只小3。    # → (1 2)

# 过滤等于3的数
列1 2 3 3 4,只等3。    # → (3 3)

归约(归)

# 求和
列1 2 3 4 5,归加0。    # → 15

# 求积
列1 2 3 4 5,归乘1。    # → 120

# 求最大值(需要自定义函数)
列1 5 3 9 2,归大0。    # → 9

组合使用

# 过滤后映射
列1 2 3 4 5,只大2,皆乘2。  # → (6 8 10)

# 映射后过滤
列1 2 3 4 5,皆乘2,只大5。  # → (6 8 10)

# 映射后归约
列1 2 3 4 5,皆乘2,归加0。  # → 30

字符串操作

字符串字面量

# 基本字符串
"Hello"。           # → "Hello"

# 包含空格
"Hello World"。     # → "Hello World"

# 空字符串
""。                # → ""

字符串函数

# 长度
长度"Hello"。       # → 5
长度"Hello World"。 # → 11
长度""。            # → 0

# 连接
连接"Hello""World"。     # → "HelloWorld"
连接"Hello"" ""World"。  # → "Hello World"

# 打印
印"Hello World"。   # 打印Hello World

控制结构

条件表达式

# 基本条件
若1则2否则3。       # → 2
若0则2否则3。       # → 3

# 嵌套条件
若1则若1则10否则20否则30。  # → 10

# 条件与运算
若1等1则100否则0。  # → 100

变量定义

# 基本变量
定x为10。
x乘2。             # → 20

# 列表变量
定列表为列1 2 3。
列表,首。          # → 1
列表,皆乘2。       # → (2 4 6)

# 字符串变量
定消息为"Hello"。
印消息。            # 打印Hello

同像性

Quote(引用)

# 引用表达式
~"1加2"。          # → (1 加 2)

# 引用列表
~"列1 2 3"。       # → (列 1 2 3)

# 引用管道
~"10加5,乘2"。    # → (10 加 5) (乘 2)

Eval(求值)

# 求值引用
行~"1加2"。        # → 3
行~"列1 2 3,皆乘2"。  # → (2 4 6)

# 引用后求值
定expr为~"10加5,乘2"。
行expr。           # → 30

代码即数据

# 存储代码
定代码为~"1加2"。

# 操作代码(未来功能)
# 修改代码
# 执行代码
行代码。            # → 3

综合示例

数学计算

# 计算阶乘(5!)
列1 2 3 4 5,归乘1。  # → 120

# 计算平方和(1² + 2² + 3²)
列1 2 3,皆乘列1 2 3,归加0。  # → 14

# 判断奇偶
模7 2。             # → 1 (奇数)
模8 2。             # → 0 (偶数)

列表处理

# 计算平均值
列1 2 3 4 5,归加0,除5。  # → 3

# 找出偶数
列1 2 3 4 5 6 7 8 9 10,只等模2 0。  # → (2 4 6 8 10)

# 列表反转(需要递归,暂不支持)
# 列1 2 3 4 5,反转。  # → (5 4 3 2 1)

字符串处理

# 构建问候语
连接"Hello, ""World""!"。  # → "Hello, World!"

# 计算字符串长度
长度"The quick brown fox"。  # → 19

实际应用

# 计算购物总价
定价格为列10 20 30 40 50。
定数量为列2 3 1 2 1。
# 总价 = 10*2 + 20*3 + 30*1 + 40*2 + 50*1 = 220
# (需要更复杂的函数支持)

# 过滤及格分数
定分数为列85 92 78 65 88 72 95。
分数,只大70。      # → (85 92 78 88 72 95)

# 计算总分
分数,归加0。       # → 575

注释示例

# 这是一个完整的示例程序
# 功能:计算1到10的和

# 创建1到10的列表
定数字为列1 2 3 4 5 6 7 8 9 10。

# 计算和
定总和为数字,归加0。

# 打印结果
印总和。            # 打印55

【文言心】示例代码 - 实践出真知! 🎉