小编use*_*174的帖子

根据字母顺序比较字符串

编写一个函数,它接受两个字符串作为参数,并返回一个更长的字符串.如果字符串具有相同的长度,则返回按字母顺序排列的字符串.

这是我到目前为止:

    def strings(x,y):
        if len(x) > len(y):
            return x
        if len(x)==len(y):
            return 
        else:
            return y
Run Code Online (Sandbox Code Playgroud)

我想知道我将如何编写代码,以便它将选择第一个字母表,第一个字段为第二个if语句.

python

10
推荐指数
3
解决办法
3万
查看次数

Collat​​z猜想序列

Collat​​z猜想

我要做的是:写一个名为collat​​z_sequence的函数,它接受一个起始整数并返回该数字的整数序列,包括起始点.以列表的形式返回序列.创建函数,以便在用户输入任何小于1的整数时,返回空列表[].

关于collat​​z猜想的背景:

取任何自然数n.如果n是偶数,则将其除以2得到n/2,如果n为奇数则将其乘以3并加1得到3n + 1.重复该过程无限期.猜想是,无论你从哪个数字开始,你总是会达到1.

到目前为止我所拥有的:

def collatz_sequence(x):
    seq = [x]
    if x < 1:
       return []
    while x > 1:
       if x % 2 == 0:
         x= x/2
       else:
         x= 3*x+1 
    return seq
Run Code Online (Sandbox Code Playgroud)

当我使用小于1的数字运行时,我得到正确的空集.但是当我使用高于1的数字运行时,我只得到那个数字,即collat​​z_sequence(6)返回[6].我需要这个来返回整个数字序列,所以6应该在列表中返回6,3,10,5,16,8,4,2,1.

python

6
推荐指数
2
解决办法
3万
查看次数

排序化学和系数的元组

可能重复:
如何对列表/元组进行排序(列表/元组)?

我有一个元组列表,我想按元组中的第二个值按数字顺序排序.我正在使用的列表示例是:

[('H2O', '6'), ('O2', '4')]
Run Code Online (Sandbox Code Playgroud)

所以在这种情况下我想要的是:

[('O2','4'),('H2O',6')]
Run Code Online (Sandbox Code Playgroud)

我知道这是非常基本的,我似乎可以解决它.

python

1
推荐指数
1
解决办法
103
查看次数

尝试使用列表推导过滤字典

使用单个语句,打印一个只包含原子符号及其对应权重的字典,这些元素位于wts(我的字典)中,这些元素在原子符号中只有一个字母.即,包括'H'但省略'他'.我的字典设置为{'H':'1.00794','He':'4.002602','Li':'6.941','Be':'9.012182','B':'10.811','C':'12.0107','N':'14.0067','O':'15.9994'}

[for element in wts if len(element) == 1]
Run Code Online (Sandbox Code Playgroud)

我在想列表理解会起作用,但是,我怎么会只看元素符号.这会返回以下错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "_sage_input_45.py", line 10, in <module>
    exec compile(u"print _support_.syseval(python, u'[for element in wts if len(element) == 1]', __SAGE_TMP_DIR__)" + '\n', '', 'single')
  File "", line 1, in <module>

  File "/sagenb/sage_install/sage-5.3-sage.math.washington.edu-x86_64-Linux/devel/sagenb-git/sagenb/misc/support.py", line 487, in syseval
    return system.eval(cmd, sage_globals, locals = sage_globals)
  File "/sagenb/sage_install/sage-5.3-sage.math.washington.edu-x86_64-Linux/local/lib/python2.7/site-packages/sage/misc/python.py", line 53, in eval
    eval(compile(s, '', 'exec'), globals, globals)
  File "", line 3
    [for element in …
Run Code Online (Sandbox Code Playgroud)

python

0
推荐指数
1
解决办法
1070
查看次数

标签 统计

python ×4