我对有多少python开发人员if not
在条件语句中使用的方式/原因感到有些困惑.
例如,假设我们有一个功能,
def foo(bar = None):
if not bar:
bar = 2
Run Code Online (Sandbox Code Playgroud)
但为什么要这样呢?我的意思是,不会做if bar != None
或if bar is not None
更明确?什么是if not
尝试说?
我不明白如何通过'任意'顺序完成字典或python中的循环.
我的意思是,它是一种编程语言,所以语言中的所有内容都必须100%确定,对吗?Python必须有某种算法来决定选择字典或集合的哪一部分,第一,第二等等.
我错过了什么?
我正在寻找一种快速的方式来转变:
let germany = "DE"
Run Code Online (Sandbox Code Playgroud)
成
let flag = "\u{1f1e9}\u{1f1ea}"
Run Code Online (Sandbox Code Playgroud)
也就是说,什么是映射D
到1f1e9
,并E
以1f1ea
我一直在寻找.utf8
的字符串,但这返回一个整数.
FWIW我的总体目标是能够获取任意国家代码并获得相应的表情符号标志.
编辑:我也很好,只是拿着一个表,如果它可以在某处使用这个映射.我用Google搜索但没找到它.
我刚刚在OS X 10.8.2的终端上创建了一个.c文件并用gcc编译.
我的语法是gcc -o <filename> <sourcefile>
,这很好.现在我看到我有一个可执行文件,文件<filename>
告诉我这样,但我不确定如何在双击图标/ lame旁边实际运行它.当我尝试通过输入找不到命令来运行可执行文件时,但我认为它是可执行的......?
谢谢.
编辑:我是如此愚蠢,它只是打开 <filename>
我想知道是否有更通用的方法来做下面的事情?我想知道是否有办法创建st函数,以便我可以搜索非预定义数量的字符串?
例如,能够创建一个通用的st函数,然后输入st('Governor','Virginia','Google)
这是我当前的功能,但它预定义了两个可以使用的单词.(df是一个pandas DataFrame)
def search(word1, word2, word3 df):
"""
allows you to search an intersection of three terms
"""
return df[df.Name.str.contains(word1) & df.Name.str.contains(word2) & df.Name.str.contains(word3)]
st('Governor', 'Virginia', newauthdf)
Run Code Online (Sandbox Code Playgroud) 只是考虑Python的dict
"功能",并开始意识到这dict
根本不是一个功能.例如,如果我们这样做dir(dict)
,我们会得到各种方法,这些方法不包含在用户定义函数的通常命名空间中.扩展这个想法,它dir(list)
和dir(len)
.他们不是功能,但真的type
是.但后来我对文档页面http://docs.python.org/2/library/functions.html感到困惑,它清楚地说明了函数.(我想它应该真的只是说内置的callables)
什么给出了什么?(开始看起来对类和函数的区分是微不足道的)
grades = [100, 100, 90, 40, 80, 100, 85, 70, 90, 65, 90, 85, 50.5]
def grades_sum(grades):
sum = 0
for i in grades:
sum += grades[i]
print(grades_sum(grades))
Run Code Online (Sandbox Code Playgroud)
这是我的代码,我试图理解为什么我会从索引回溯中获取.
在浏览文档时,特别是http://docs.python.org/2/reference/expressions.html#is,我仍然找不到定义Python关键字实现的dunder/protocol方法is
.什么方法决定它?根据我的理解,所有is
操作都是id
在调用两个对象时比较函数的结果.
(交叉发布到lwt github问题)
我已经将我的用法归结为此代码示例,这将泄漏文件描述符.
说你有:
#require "lwt.unix"
open Lwt.Infix
let echo ic oc = Lwt_io.(write_chars oc (read_chars ic))
let program =
let server_address = Unix.(ADDR_INET (inet_addr_loopback, 2000)) in
let other_addr = Unix.(ADDR_INET (inet_addr_loopback, 2001)) in
let server = Lwt_io.establish_server server_address begin fun (tcp_ic, tcp_oc) ->
Lwt_io.with_connection other_addr begin fun (nc_ic, nc_oc) ->
Lwt_io.printl "Created connection" >>= fun () ->
echo tcp_ic nc_oc <&> echo nc_ic tcp_oc >>= fun () ->
Lwt_io.printl "finished"
end
|> Lwt.ignore_result
end
in
fst (Lwt.wait ())
let …
Run Code Online (Sandbox Code Playgroud) 我们知道一切都是Python中的对象,因此包括整数.这样做dir(34)
并不奇怪,有可用的属性.
我的困惑源于以下内容,为什么34.__class__
当我知道34
确实具有该属性时,do 会给出语法错误__class__
.此外,为什么将一个整数绑定到一个名称,比如说x
,然后x.__class__
产生我期望的int类型的答案?