Python回文数
回文数判断
设 n 是任意自然数
如果 n 的各位数字反向排列所得自然数 与 n 相等 则 n 称为回文数
import sys
n = input("请输入一个5位数字:");
if len(n) < 5:
print("长度小于五位")
sys.exit(0)
if n == n[::-1]:
print("{}是回文数".format(n))
else:
print("{}不是回文数".format(n))
import sys
n = input("请输入一个5位数字:");
if len(n) < 5:
print("长度小于五位")
sys.exit(0)
if n == n[::-1]:
print("{}是回文数".format(n))
else:
print("{}不是回文数".format(n))
接口是一种类型, 一种抽象的类型
接口就是你要实现的方法的清单
接口的定义
type moner interface{
方法的签名(参数)(返回值)
}
接口的实现
接口变量
空接口
mapinterface{}
interface{}:空接口
接口底层
类型断言
类型断言1
assign("1")
func assign(a interface{}) {
str, ok := a.(string)
if !ok { // 不是字符串ok为空
fmt.Println("猜错了")
} else {
fmt.Println("猜对了 传进来的是一个字符串:", str)
}
}
类型断言2
assign2("asf")
func assign2(a interface{}) {
switch v := a.(type) { // 只能在switch内部使用
case string:
fmt.Println("这是string类型", v)
case int:
fmt.Println("这是int类型", v)
case byte:
fmt.Println("这是byte类型", v)
case int64:
fmt.Println("这是int64", v)
}
}
/** base64转文件输出
* @param String $base64_data base64数据
* @param String $file 要保存的文件路径
* @return boolean
*/
function base64ToFile(string $base64_data, string $file): bool
{
if (!$base64_data || !$file) {
return false;
}
return file_put_contents($file, base64_decode($base64_data), true);
}
/** 文件转base64输出
* @param String $file 文件路径
* @return String base64 string
*/
function fileToBase64(string $file): string
{
$base64_file = '';
if (file_exists($file)) {
$mime_type = mime_content_type($file);
$base64_data = base64_encode(file_get_contents($file));
$base64_file = 'data:' . $mime_type . ';base64,' . $base64_data;
}
return $base64_file;
}
/**
* 把二维数组按照某个字段分组
*
* @Author moming
* @DateTime 2022-09-03
* @param array $arr 二维数组
* @param string $key 需要分组的key
* @return array 分组结果
*/
function array_group_by(array $arr, string $key): array
{
$grouped = [];
foreach ($arr as $value) {
$grouped[$value[$key]][] = $value;
}
if (func_num_args() > 2) {
$args = func_get_args();
foreach ($grouped as $key => $value) {
$parms = array_merge([$value], array_slice($args, 2, func_num_args()));
$grouped[$key] = call_user_func_array('array_group_by', $parms);
}
}
return $grouped;
}