我有一个utf-8编码的文件,其中包含多行,例如
\ x02我不喜欢\ x0307香蕉\ x03。\ x02 嗨,你好吗? 你打过电话了?
如何将文件的行读取到列表中,对所有转义序列进行解码?我尝试了下面的代码:
with codecs.open(file, 'r', encoding='utf-8') as q:
quotes = q.readlines()
print(str(random.choice(quotes)))
Run Code Online (Sandbox Code Playgroud)
但是它打印行而不解码转义字符。
\ x02我不喜欢\ x0307香蕉\ x03 \ x02
(请注意:转义字符是IRC颜色代码,\x02是加粗文本的字符,并且\x03是颜色代码的前缀。此外,此代码来自我的IRC僵尸程序,其中的MSG功能由代替print())
我的代码:
if (isset($_POST['del'])) {
foreach ($_POST['del'] as $id){
if ($stmt = $mysqli->prepare("DELETE FROM `users` WHERE `?id` = ?")) {
$stmt->bind_param('i', $id);
$stmt->execute();
} else {
printf("Errormessage: %s<br>", $mysqli->error);
}
}
}
Run Code Online (Sandbox Code Playgroud)
结果:
Errormessage: Unknown column '??id' in 'where clause'
$_POST['del'] 包含表单复选框的整数.
但是,它之前使用的是相同的连接,它可以工作:
$modified = arrayRecursiveDiff($_POST, $data);
foreach($modified as $key => $val_arr) {
if (!is_array($val_arr)) {continue;}
foreach ($val_arr as $iteration => $val) {
$id = $iteration + 1;
$query = 'UPDATE users
SET '. $key .'="'. $val .'"
WHERE id = …Run Code Online (Sandbox Code Playgroud)