我试图弄清楚如何计算在两个不同数字(如2和3)之间交替的某个整数(作为范围).因此输出将是2 5 7 10 12 15等.
我开始尝试改变一个简单的while循环,如下所示,取两个值:
a = 0
while a < 100:
a = a + 2 + 3
print(a, end=' ')
Run Code Online (Sandbox Code Playgroud)
但它最终只能计算到100乘5.
我已经尝试了数字范围和循环和模块,如itertools尝试找出一种方法来做到这一点,我完全被难倒了.
我在搜索之后执行了搜索,所有我能找到的是通过一个带有循环和范围的数字来计算.
假设我创建了一个由n个键组成的字典.每个键都映射到一致长度的整数列表.我现在要做的是一个新列表,它表示dict列表中每个点的整数之和.为了显示:
my_dict = {'a': [1, 2, 3, 4], 'b': [2, 3, 4, 5], 'c': [3, 4, 5, 6]}
total_sum_list = []
for key in my_dict.keys():
total_sum_list += ###some way of adding the numbers together
Run Code Online (Sandbox Code Playgroud)
预期产量:
total_sum_list = [6,9,12,15]
Run Code Online (Sandbox Code Playgroud)
如上所示,我不知道如何设置这个for循环,以便我可以创建一个类似的列表total_sum_list.我已经尝试过整理列表,但到目前为止我的努力还没有成功.有什么建议?
我在这里试图在python中创建一个简单的计算器,我想知道是否有可能在命令运行时将3个第一行放入一行.我的意思是; 我不必按Enter键键入下一个数字/运算符,而是按空格键(在输入部分).
while True:
import operator
num1 = int(input("Whats the first number:"))
oper = input("Which operator would you like to use: (+,-,/,*,**,^) :")
num2 = int(input("Whats the second number:"))
if oper == "+":
x = operator.add
elif oper == "-":
x = operator.sub
elif oper == "*":
x = operator.mul
elif oper == "/":
x = operator.__truediv__
elif oper == "**":
x = operator.pow
elif oper == "^":
x = operator.xor
else:
print("invalid input")
print(num1,oper,num2,"=",x(num1,num2))
Run Code Online (Sandbox Code Playgroud) 我正在尝试为癌症检测 Kaggle 挑战构建一个图像分类器。这是我正在使用的代码。
`train_datagen = ImageDataGenerator(rescale=1./255,
validation_split=0.15
)
test_datagen = ImageDataGenerator(rescale=1./255)
train_path = MAIN_DIR + '/CancerTrain'
valid_path = MAIN_DIR + '/CancerTrain'
train_generator = train_datagen.flow_from_dataframe(
dataframe = train_labels,
directory=train_path,
x_col = 'id',
y_col = 'label',
has_ext=False,
subset='training',
target_size=(96, 96),
batch_size=64,
class_mode='binary'
)
validation_generator = train_datagen.flow_from_dataframe(
dataframe=df,
directory=valid_path,
x_col = 'id',
y_col = 'label',
has_ext=False,
subset='validation', # This is the trick to properly separate train and validation dataset
target_size=(96, 96),
batch_size=64,
shuffle=False,
class_mode='binary'
)`
Run Code Online (Sandbox Code Playgroud)
但是,每当我运行它时,我都会收到此错误:
`AttributeError Traceback (most recent call last)
<ipython-input-22-eb9c70d0ad1c> …Run Code Online (Sandbox Code Playgroud) 我是Haskell编程的新手,我尝试通过/不使用列表推导来解决问题。
问题是在列表中查找元素的索引并返回索引列表(在列表中找到元素的位置)。
我已经通过使用列表推导解决了问题,但是现在我有一些不使用列表推导来解决问题的问题。
以我的递归方式:
我尝试将[0..(length list)]和的列表压缩为自己。然后,如果元素a等于列表中的元素->用压缩的Tupel的第一个元素创建一个新列表,然后list(my index)以递归方式搜索该函数,直到列表为[]。
这就是我的列表理解(有效):
positions :: Eq a => a -> [a] -> [Int]
positions a list = [x | (x,y) <- zip [0..(length list)] list, a == y]
Run Code Online (Sandbox Code Playgroud)
那是我的递归方式(不起作用):
positions' :: Eq a => a -> [a] -> [Int]
positions' _ [] = []
positions' a (x:xs) =
let ((n,m):ns) = zip [0..(length (x:xs))] (x:xs)
in if (a == m) then n:(positions' a xs)
else (positions' a xs)
Run Code Online (Sandbox Code Playgroud)
*对不起,我不知道如何突出显示单词
但是ghci说:
*Main> …Run Code Online (Sandbox Code Playgroud) 我目前正在使用 Python 脚本编写 Power BI。我想打印(使用函数print),但我无法找到在任何地方查看我打印的消息的方法。
如果 Power BI 上存在控制台以获取 Python 输出,我已经在 Google 和 Stack Overflow 上进行了搜索
import pandas as pd
dataset = pd.DataFrame(dataset.loc[:1, 'access_token'])
access_token = dataset.iloc[0]
print(access_token)
Run Code Online (Sandbox Code Playgroud)
我想要输出 print(access_token)
Python中有没有办法自动将迭代计数器添加到while循环中?
我想删除这些行count = 0和count += 1以下代码片段,但仍然可以计算迭代次数并针对布尔值进行测试elapsed < timeout:
import time
timeout = 60
start = time.time()
count = 0
while (time.time() - start) < timeout:
print 'Iteration Count: {0}'.format(count)
count += 1
time.sleep(1)
Run Code Online (Sandbox Code Playgroud) 我试图想出一个函数,它接受一个输入x并将一个大的列表与元素x*x的数量分成x个较小的列表,每个列表中包含x个元素,例如:
big_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
def split_list (x):
big_list = pairs (x)
small_list = [big_list[0:x] for x in range (x)]
Run Code Online (Sandbox Code Playgroud)
我的输出必须是:
[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]]
Run Code Online (Sandbox Code Playgroud)
但是我没有得到它,你推荐什么?
我正在使用urllib.requestPython 3 中的模块。
我的问题是:
如果我使用打开连接,是否需要关闭连接 urllib.request.ulropen?
我在使绘图看起来像使用matplotlib时遇到问题。我已经将数据(Y)聚合为与date(X)相对应的float,为datetime64格式。我的数据开始于2019/04/23,结束于2019/08/02。不幸的是,数据不完整,我错过了2019/06/18至2019/07/08之间的时间。
这导致我的绘图中这两个日期之间的直线,我想消失。
我知道一种可能性是使用熊猫用NaN填充缺少的日期和时间以及LEVEL列。如我所读,matplotlib将忽略NaN,所以我的问题会解决吗?如果是这样,我该怎么办?我已经尝试了很多代码片段,例如,使用DATETIME作为索引(为了避免弄乱下面的代码,我希望避免这样做)。
另一种可能性:也许有一种策略可以在绘制时仅压住这条线而不触及数据框?不干净,但足够高效。是的,散点图可以避免这种情况,但是我需要这样。
这是我的数据框外观的示例:
DATETIME LEVEL
0 2019-04-23 16:30:00 0.087074
1 2019-04-23 16:35:00 0.093089
2 2019-04-23 16:40:00 0.081103
3 2019-04-23 16:45:00 0.093117
4 2019-04-23 16:50:00 0.093131
5 2019-04-23 16:55:00 0.087145
6 2019-04-23 17:00:00 0.087159
7 2019-04-23 17:05:00 0.087174
8 2019-04-23 17:10:00 0.087188
Run Code Online (Sandbox Code Playgroud)
您会看到两条垂直的红线和绿线之间的线,这还有另一种含义。
非常感谢您的时间和帮助
python ×9
list ×3
python-3.x ×3
loops ×2
dictionary ×1
haskell ×1
indexing ×1
iteration ×1
matplotlib ×1
pandas ×1
powerbi ×1
python-2.7 ×1
python-2.x ×1
recursion ×1
urllib ×1
urllib3 ×1