分类 编程语言 下的文章

列举部分占位符

%d整数的占位符
%f小数的占位符
%%表示百分号(因为百分号代表了占位符,所以带占位符的字符串中要表示百分号必须写成%%)

一、 使用占位符%格式化

按序罗列式 适用于python2.6前,沿用至今 延用了C语言的输出格式
a=1.1
b=2
print("有两个数,分别是浮点数a= %f 和整数b= %d" %(a,b))

这种写法,必须在后方按照顺序罗列准备用于替换占位符的变量名称,能不能在前面直接指定用于替换的变量名称呢?

二、 使用format格式化

官方推荐 python2.6新增,沿用至今
格式:str.format
a=1.1
b=2
print("有两个数,分别是浮点数a= {}和整数b= {}".format(a,b)) 
# {key}称为索引,索引为空{}时,按照顺序从后方取值,可以使用01234这样的顺序的数字作为索引进行排序。
print("有两个数,分别是浮点数a= {0}和整数b= {1}".format(a,b))
# 也可以直接使用一个特定名称作为索引。
print("有两个数,分别是浮点数a= {num_a}和整数b= {num_b}".format(num_a=a,num_b=b))
# 你也可以把变量a,b替换为一个单引号包括的字符串,如:'1.1'

以上三个print语句都输出:有两个数,分别是浮点数a= 1.1和整数b= 2

三、 f-string格式化

直接指定式 适用于Python >= 3.6
f-string是在字符串前面加上 "f",{}直接使用变量、表达式等。
a=1.1
b=2
print(f"有两个数,分别是浮点数a= {a:.1f}和整数b= {b:d}")
# 为啥加个.1而不是直接写{a:f} ?f前面的.1指的是保留小数点后一位小数,不写.1输出的就是:1.100000

The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than right now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!

我在Linux.cn的一篇文章里找到了这个游戏,试玩了一下略微简陋,但是总的来说感觉还不错。
官网:http://www.minetest.net/ 官方Wiki:https://wiki.minetest.net/Getting_Started/zh-hans
有个小插曲,中文文档里对GNU/Linux安装是这么描述的:sudo apt get install minetest,显然少了个"-",我就跑去IRC里提Bug了,现在已经改为:sudo apt install minetest,这是我今年正经捉的第一个小虫子,也是第一次主动成功使用IRC和别人用英语交流。

兑现承诺:和朋友分享这个游戏

sendpix0.jpg
截图_2021-12-19_03-33-35.png

- 阅读剩余部分 -

正常情况下因为默认数据库utf-8编码无法支持emoji,保存含emoji内容会出现500 Database Query Error.

进入SQL数据库

alter table typecho_contents convert to character set utf8mb4;
alter table typecho_comments convert to character set utf8mb4;
alter table typecho_users convert to character set utf8mb4;
alter table typecho_fields convert to character set utf8mb4;
alter table typecho_metas convert to character set utf8mb4;
alter table typecho_options convert to character set utf8mb4;
alter table typecho_relationships convert to character set utf8mb4;

Typecho_是安装时设置的表前缀,如果你的表前缀不是默认前缀请自行替换。
不知道自己的表前缀往下看。

修改Typecho本地配置文件

默认配置文件是:config.inc.php
红色部分是表前缀,蓝色是你需要修改的,把默认的utf8改为utf8mb4即可
config.inc.php部分截图

Emoji测试

😉

printf()的格式

printf("格式控制字符串",输出参数串)

格式字符串:指定数据的输出格式
输出参数串:待输出的数据,可以是变量,常亮,表达式

scanf()的格式

scanf("格式控制字符串",内存地址1,内存地址2,内存地址...,内存地址n)
scanf("%d",&a)

isset() 函数用于检测变量是否已设置并且非 NULL。

isset ( mixed $var [, mixed $... ] )

如果一次传入多个参数,那么 isset() 只有在全部参数都被设置时返回 TRUE,计算过程从左至右,中途遇到没有设置的变量时就会立即停止。

返回值bool

如果指定变量存在且不为 NULL,则返回 TRUE,否则返回 FALSE。