在BottomNavigation我有 2 页。第一页从网络加载数据并显示在 SliverList 和显示静态列表数据的另一个页面中。
从第 1 页移动到第 2 页然后第 1 页后,所有网络数据都消失了。我已经使用了 PageStorageKey,但仍然无法正常工作。但第二页从未重新加载。
为什么第一页没有保存其具有 StreamBuilder 的状态?
我的代码:
底部导航页面:
class MainActivity extends StatefulWidget {
@override
_MainActivityState createState() => _MainActivityState();
}
class _MainActivityState extends State<MainActivity> {
final Key keyHome = PageStorageKey('pageHome');
final Key keyChat = PageStorageKey('pageChat');
int currentTab = 0;
HomePage home;
Chat chat;
List<Widget> pages;
Widget currentPage;
final PageStorageBucket bucket = PageStorageBucket();
@override
void initState(){
home = HomePage(
key: keyHome,
);
chat = Chat(
key: keyChat,
);
pages = …Run Code Online (Sandbox Code Playgroud) 我在列表中有以下列名:
vars = ['age','balance','day','duration','campaign','pdays','previous','job_admin.','job_blue-collar']
Run Code Online (Sandbox Code Playgroud)
我有一个由数组索引组成的数组
(array([1, 5, 7], dtype=int64),)
Run Code Online (Sandbox Code Playgroud)
我想基于数组索引对列表进行子集化
期望的输出应该是
vars = ['balance','pdays','job_admin.']
Run Code Online (Sandbox Code Playgroud)
我在python中尝试过类似的东西
for i, a in enumerate(X):
if i in new_L:
print i
Run Code Online (Sandbox Code Playgroud)
但是,它不起作用.
想象一下我有一个dict这样的:
d = {'key': 'value'}
Run Code Online (Sandbox Code Playgroud)
该dict只包含一个键值。我试图让key从这个dict,我试过d.keys()[0],但它返回IndexError,我尝试这样做:
list(d.keys())[0]
Run Code Online (Sandbox Code Playgroud)
它工作得很好,但我认为这不是一个好方法,因为它创建了一个新列表,然后首先获取它的索引。
有一个更好的方法吗?我也想value领
我试图在一个句子中找到最大长度的单词,比如
a = "my name is john and i am working in STACKOVERFLOWLIMITED"
要获取这句话中最大的单词,我正在尝试类似的东西
c = a.split(',')
c = ['my', 'name', 'is', 'john', 'and', 'i', 'am', 'working', 'in', 'STACKOVERFLOWLIMITED']
当我试图打印max(C)
output - 'working'
为什么输出中不包含"STACKOVERFLOWLIMITED"作为该句中最长的单词?
我有以下代码:
class Node:
def __init__(self, item):
self.item = item
node1 = Node(12)
cur = node1
Run Code Online (Sandbox Code Playgroud)
是否可以node1使用删除cur?
我试过了,del cur但它没有给出想要的结果,cur现在不再存在,但node1仍然存在。
任何帮助表示赞赏。
我有一个问题:(我正在研究Django 1.8,Python 2.7.15)我从数据库中获取了一个对象:
shop_users = ShopUsers.objects.get(pk=_id)
Run Code Online (Sandbox Code Playgroud)
然后,如果对象存在,我正在为View准备数据:
if shop_users:
data = {
'full_name': shop_users.full_name,
'shop': shop_users.shop.title,
'price_title': shop_users.price.title if shop_users.price.title else '',
'package_price': shop_users.price.price,
'user_price': shop_users.payment.operation_amount
}
Run Code Online (Sandbox Code Playgroud)
但是shop_users.price.title可能不存在.
我想在我准备上面的数据时检查它(我正在做'...如果......其他'),但如果shop_users.price.title不存在则提供AttributeError.
我可以在'data'声明之前使用try/except但这会使我的代码加倍...
有没有处理AttributeError的技巧(... if ... else)?
也许shop_users.price.title [0](不起作用)
或者获取(shop_users.price.title)?
我只是不想加倍我的代码...但我不知道任何诀窍:/
我很年轻.我感谢任何帮助!
我正在if-else通过从文本文件中逐行读取输入来编写一个简单的Python脚本,其中包含for循环中的条件.下面是我的脚本.我应该得到预期的输出.请帮忙!我的env.txt包含:
DEV01
DEV02
UAT01
UAT02
Run Code Online (Sandbox Code Playgroud)
这是代码:
with open("env.txt") as envnames:
for eachenv in envnames:
if eachenv=="DEV01" or "DEV02":
eachenv="dev"
print (eachenv)
elif eachenv=="UAT01" or "UAT02":
eachenv="uat"
print(eachenv)
else :
print('')
Run Code Online (Sandbox Code Playgroud)
预期:
dev
dev
uat
uat
Run Code Online (Sandbox Code Playgroud)
实际:
dev
dev
dev
dev
Run Code Online (Sandbox Code Playgroud) 我有几个大的字符串列表.我需要将所有这些列表分成两个列表,以便我只保留第二个列表.例如:
lst = ['This is a list', 'of strings', 'blahblahblah', 'split_here', 'something else', 'we like cake', 'aardvarks']
Run Code Online (Sandbox Code Playgroud)
我想在'split_here'之后只抓取字符串,这样新的列表将是这样的:
new_lst = ['something else', 'we like cake', 'aardvarks']
Run Code Online (Sandbox Code Playgroud)
我试过这个:
new_list = str(lst).split('split_here')[1]
Run Code Online (Sandbox Code Playgroud)
但新输出有一堆转义字符("\"符号).我尝试用以下代替它们:
.replace('\\', '')
Run Code Online (Sandbox Code Playgroud)
但这也不起作用.
我想我必须有一个简单的方法来做到这一点.
我有一个字符串,想要删除所有空格、破折号和下划线...我想要输出的是字符串 A 到 Z 和 0 到 9。我的版本是 Python3 例如:
输入:
fafaf fadfa fafa fa-fa faf_afa@gs!
Run Code Online (Sandbox Code Playgroud)
输出:
fafaffadfafafafafafafafags
Run Code Online (Sandbox Code Playgroud)
我应该怎么办?谢谢
我需要将 DataFrame 转换为列表,并将其标题保存为列表中的第一项。我想其中一种方法是分别转换列和值,然后加入这些列表。但还有更好的办法吗?
数据框,
import pandas as pd
df=pd.DataFrame({"Sales QTY":[10,20,30,40],
"Sales Person":['Jack', 'Adam', 'Ken', 'Jack'],
"Product":["Apple", "Orange","Apple","Cherry"]
})
Run Code Online (Sandbox Code Playgroud)
期望的输出
[['Sales QTY', 'Sales Person', 'Product'],
[10, 'Jack', 'Apple'],
[20, 'Adam', 'Orange'],
[30, 'Ken', 'Apple'],
[40, 'Jack', 'Cherry']]
Run Code Online (Sandbox Code Playgroud) python ×9
list ×3
python-3.x ×3
string ×3
attributes ×1
bloc ×1
dataframe ×1
del ×1
dictionary ×1
django ×1
file ×1
flutter ×1
for-loop ×1
if-statement ×1
instance ×1
max ×1
pandas ×1
python-2.7 ×1
split ×1