我正在玩列表推导,我在另一个网站上看到了这个小片段:
return ''.join([`num` for num in xrange(loop_count)])
Run Code Online (Sandbox Code Playgroud)
我花了几分钟试图复制这个函数(通过输入),然后才意识到`num`它正在破坏它.
在这些字符中包含语句的内容是什么?从我所看到的它相当于str(num).但是当我计时:
return ''.join([str(num) for num in xrange(10000000)])
Run Code Online (Sandbox Code Playgroud)
它需要4.09s而:
return ''.join([`num` for num in xrange(10000000)])
Run Code Online (Sandbox Code Playgroud)
需要2.43秒.
两者都给出了相同的结果,但其中一个慢得多.这里发生了什么?
编辑:奇怪... repr()给出稍微慢一点的结果`num`.2.99s vs 2.43s.使用Python 2.6(尚未尝试过3.0).
/*Create the Registered guest table*/
create table Registered guest
(
Guest_ID integer not null,
F_Name varchar (50) not null,
L_Name varchar (50) not null,
Start_date date not null CHECK (Start_date <=End_date),
End_date date not null,
Dietary_needs varchar(20),
Acco_needs varchar (50),
Number_ of_ accompanying guests integer(5),
Primary key (Guest_ID)
);
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
"guest"附近:语法错误:create table已注册的guest
我找不到语法错误!