小编Jim*_*ard的帖子

string.rstrip()正在删除多余的字符

为什么这个语句会删除'E'in 'PIPELINE':

In: 'PIPELINE_DEV'.rstrip('_DEV')
Out: 'PIPELIN'
Run Code Online (Sandbox Code Playgroud)

但是这个声明没有删除'S':

In: 'PIPELINES_DEV'.rstrip('_DEV')
Out: 'PIPELINES'
Run Code Online (Sandbox Code Playgroud)

该声明最后删除了所有的E:

In: 'PIPELINEEEEEEEE_DEV'.rstrip('_DEV')
Out: 'PIPELIN'
Run Code Online (Sandbox Code Playgroud)

当我将rstrip转换为2个单独的语句时,它可以正常工作:

In: 'PIPELINE_DEV'.rstrip('DEV').rstrip('_')
Out: 'PIPELINE'
Run Code Online (Sandbox Code Playgroud)

python string python-3.x

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

Python shebang 不工作

Python安装在:

C:/Python/Python35
Run Code Online (Sandbox Code Playgroud)

在我的程序的顶部,我放了:

#!/usr/bin/env python3
Run Code Online (Sandbox Code Playgroud)

我打开 Windows 命令提示符并输入:

./words.py
Run Code Online (Sandbox Code Playgroud)

我得到的消息是:

"." is not recognized
Run Code Online (Sandbox Code Playgroud)

有人告诉我这在 Windows 上应该很好用,所以我很困惑?

python windows cmd shebang python-3.x

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

numpy.argsort以随机顺序给出结果

我试图简单地使用排序数组或列表numpy.argsort().出于某种原因,它以随机顺序给我结果:

import numpy

unsorted_list = [1.19021287, 1.19021287, 1.15190644, 1.12193492, 1.19021287, 1.25190644]
sorted_list = numpy.argsort(unsorted_list)
print sorted_list
array([3, 2, 0, 1, 4, 5])
Run Code Online (Sandbox Code Playgroud)

它应该回来 array([0, 1, 4, 3, 5, 4])

python sorting numpy

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

__iter__中__getitem__的等效代码

我试图__iter__在Python 3中更多地了解.出于某些原因__getitem__,我更好地理解__iter__.我想我不知道怎么没有得到相应的下一个实现__iter__.

我有以下代码:

class Item:
    def __getitem__(self,pos):
        return range(0,30,10)[pos]

item1= Item()
print (f[1]) # 10
for i in item1:
   print (i) # 0 10 20
Run Code Online (Sandbox Code Playgroud)

我理解上面的代码,但是又如何使用__iter__和编写等效代码__next__()

class Item:
   def __iter__(self):
      return self
      #Lost here
   def __next__(self,pos):
      #Lost here
Run Code Online (Sandbox Code Playgroud)

我理解当python看到一个__getitem__方法时,它会尝试通过调用带有整数索引的方法来迭代该对象0.

python iterator python-3.x

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

求和列表元素

我正在尝试为我参与的在线编码课程做这个问题,其中一个问题要求我在列表中添加整数.我试图找到答案(并访问了本网站上的其他几页),但我想不出任何东西.请帮忙!

到目前为止,这是我的代码:

total = 0
att = input("RSVPs: ")
att = att.split(",")
for i in att:
  print(sum(iatt) for i in att)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

python list python-3.x

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

如何使用configparser从配置文件中读取大写字母的密钥?

使用python configparser包读取配置文件时,所有键名都是小写字符串.有人知道如何读取保留大写和大写单词的字符串吗?

例如:

$cat config.cfg 
[DEFAULT]
Key_1 = SomeWord
KEY_2 = Another Word

$ python3
>>> from configparser import ConfigParser
>>> cf = ConfigParser()
>>> cf.read('./config.cfg')
['./config.cfg']
>>> print(cf.defaults())
OrderedDict([('key_1', 'SomeWord'), ('key_2', 'Another Word')])
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助!

python configparser python-3.x

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

Python 3用type()识别float

这是我在麻省理工学院开放式课程计算机科学第7讲中遇到的一段代码.这个小程序得到基数和高度的输入然后用毕达哥拉斯定理计算斜边.

由于某种原因,它无法识别浮动的进入.

代码如下:

#! /Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5
import math

#Get base
inputOK = False
while not inputOK:
    base = input("Enter base: ")
    if type(base) == type(1.0):
        inputOK = True
    else:
        print("Error. Base must be a floating point number.")

#Get Height
inputOK = False
while not inputOK:
    height = input("Enter height: ")
    if type(height) == type(1.0):
        inputOK = True
    else:
        print("Error. height must be a floating point number.")

hyp = math.sqrt(base*base + height*height)

print("Base: " + str(base) + ", height: " + str(height) …
Run Code Online (Sandbox Code Playgroud)

python types python-3.x

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

使用 isinstance 从列表中删除 false 时出现问题

所以,我正在尝试从 Python 的列表中删除非整数(非常令人兴奋的东西)。我遇到了以下代码的问题,但我似乎无法解决:

list_a = ["a", 1, 2, 3, False, [1, 2, 3]]

for item in list_a:
    if not isinstance(item, int):
        list_a.remove(item)
Run Code Online (Sandbox Code Playgroud)

我试图删除列表中的所有非 int 项目,但上面的代码不会删除 False。

我想要的是:[1, 2, 3]

我得到什么:[1, 2, 3, False]

任何帮助解决这个问题的帮助将不胜感激!

python boolean list python-3.x

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

随机调用要执行的函数

我做了这个简短的问卷调查:

from random import randint

def pancakes():
    q = raw_input("Do you like pancakes?")
    if q == "yes":
        print("Great!")
    elif q == "no":
        print("Hmmm...")

def french_toast():
    q = raw_input("Do you like french toast?")
    if q == "yes":
        print("Oh!")
    elif q == "no":
        print("Same here!")

def random():
    num = 2
    while num > 0:
        random = randint(1, 2)
        if random == 1:
            num = num -1
            pancakes()
         elif random == 2:
             num = num -1
             french_toast()

random()
Run Code Online (Sandbox Code Playgroud)

我的目标是以随机顺序提出问题.但有时同样的问题会被问到两次,因为它是随机选择的.

那么我怎么能让它只问一次相同的问题呢?

python random python-2.x

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

Python中的类变量问题

我是python的新手.我正在做以下代码,我遇到了一个不受欢迎的结果.请查看我的代码,让我知道我做错了什么:

class TestClass(object):
  @classmethod
  def __init__(self, val):
    self.val = val

  @classmethod
  def value(self):
    return self.val

def Test():
  a = TestClass(9)
  b = TestClass(8)
  c = TestClass(7)
  print(a.value(), b.value(), c.value())
Run Code Online (Sandbox Code Playgroud)

期望输出为

9 8 7
Run Code Online (Sandbox Code Playgroud)

但得到输出

7 7 7
Run Code Online (Sandbox Code Playgroud)

我的代码有什么问题.

python class python-3.x

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