当前位置: 首页 > news >正文

pycharm最近遇到的一些问题

遇到的问题

use pycharm visit NCBI but the SDK is fault and report the ecoding is wrong
so I need to know how to config python and anacoda SDK again

1.SDK encoding问题
2.anaconda安装包失败

C:\Users\>conda list python
# packages in environment at D:\1_development\06 TOOL\anaconda:
#
# Name                    Version                   Build  Channel
brotli-python             1.0.9           py312hd77b12b_8
gitpython                 3.1.43          py312haa95532_0
ipython                   8.27.0          py312haa95532_0
ipython_genutils          0.2.0              pyhd3eb1b0_1
msgpack-python            1.0.3           py312h59b6b97_0
python                    3.12.3          h2628c8c_0_cpython    conda-forge
python-dateutil           2.9.0post0      py312haa95532_2
python-dotenv             0.21.0          py312haa95532_0
python-fastjsonschema     2.16.2          py312haa95532_0
python-json-logger        2.0.7           py312haa95532_0
python-libarchive-c       5.1                pyhd3eb1b0_0
python-lmdb               1.4.1           py312hd77b12b_0
python-lsp-black          2.0.0           py312haa95532_0
python-lsp-jsonrpc        1.1.2              pyhd3eb1b0_0
python-lsp-server         1.10.0          py312haa95532_0
python-slugify            5.0.2              pyhd3eb1b0_0
python-tzdata             2023.3             pyhd3eb1b0_0
python_abi                3.12                    5_cp312    conda-forgeC:\Users\>python -c "import encodings; print(encodings.__file__)"
D:\1_development\06 TOOL\anaconda\Lib\encodings\__init__.pyC:\Users\>

查看环境变量
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
版本

C:\Users>python --version
Python 3.12.3

C:\Users>pip --version
pip 24.2 from D:\1_development\06 TOOL\anaconda\Lib\site-packages\pip (python 3.12)

C:\Users>conda --version
conda 24.9.2

解决

卸载原来的anaconda和python
重新安装miniconda在D/1dev 目录下 配置python解释器

用python跑访问NCBI的代码

# 查看已安装的包
conda list# 停用环境
conda deactivate# 删除环境(不需要时)
conda env remove -n ncbi
# 使用 conda 安装 Biopython(推荐)
conda install -c conda-forge biopython
python -c "from Bio import Entrez; print('Biopython 已成功安装')"

访问NCBI数据库

from Bio import Entrez
from Bio import SeqIO
import time# 设置你的邮箱(NCBI要求)
Entrez.email = "your_email@example.com"  # 替换为你的真实邮箱def search_ncbi(query, max_results=5):"""在NCBI中搜索条目"""print(f"\n搜索: {query}")handle = Entrez.esearch(db="nucleotide", term=query, retmax=max_results)record = Entrez.read(handle)handle.close()return record["IdList"]def fetch_genbank_records(id_list):"""获取GenBank记录"""ids = ",".join(id_list)handle = Entrez.efetch(db="nucleotide", id=ids, rettype="gb", retmode="text")records = list(SeqIO.parse(handle, "gb"))handle.close()return recordsdef fetch_abstract(pubmed_id):"""获取PubMed摘要"""handle = Entrez.efetch(db="pubmed", id=pubmed_id, retmode="xml")record = Entrez.read(handle)handle.close()return recorddef main():try:# 示例1: 搜索核苷酸序列query = "Homo sapiens[Organism] AND COX1[Gene]"ids = search_ncbi(query)print(f"找到的ID: {ids}")# 示例2: 获取GenBank记录if ids:records = fetch_genbank_records(ids[:2])  # 只取前两个for i, record in enumerate(records, 1):print(f"\n记录 {i}:")print(f"ID: {record.id}")print(f"描述: {record.description}")print(f"序列长度: {len(record.seq)} bp")# print(f"序列: {record.seq}")  # 取消注释查看完整序列# 示例3: 搜索PubMed文章pubmed_query = "COVID-19 vaccine"pubmed_ids = search_ncbi(pubmed_query, db="pubmed")if pubmed_ids:abstract = fetch_abstract(pubmed_ids[0])print("\nPubMed摘要示例:")print(abstract[0]['MedlineCitation']['Article']['Abstract']['AbstractText'][0])except Exception as e:print(f"发生错误: {e}")finally:# NCBI要求不要频繁请求,每次请求后暂停time.sleep(1)if __name__ == "__main__":main()

安装Django

conda comaand always use

命令	说明
conda list	查看已安装的包
conda deactivate	退出当前环境
conda env list	列出所有环境
conda remove -n django_env --all	删除环境
conda install -c conda-forge django

安装pytorch

conda install pytorch torchvision torchaudio cpuonly -c pytorch
conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia
import torch# 检查PyTorch版本
print(torch.__version__)# 检查CUDA是否可用(GPU版本)
print(torch.cuda.is_available())# 尝试简单张量运算
x = torch.rand(5, 3)
print(x)
#delete
conda remove pytorch torchvision torchaudio
conda clean --all

code example

import torch
import torch.nn as nn
import torch.optim as optim
import torchvision
import torchvision.transforms as transforms
from torch.utils.data import DataLoader
from tqdm import tqdm  # 进度条工具# 1. 设置随机种子保证可重复性
torch.manual_seed(42)
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
print(f"Using device: {device}")# 2. 数据准备
transform = transforms.Compose([transforms.ToTensor(),transforms.Normalize((0.5,), (0.5,))
])# 加载MNIST数据集
train_set = torchvision.datasets.MNIST(root='./data', train=True,download=True,transform=transform
)
test_set = torchvision.datasets.MNIST(root='./data',train=False,download=True,transform=transform
)train_loader = DataLoader(train_set, batch_size=64, shuffle=True)
test_loader = DataLoader(test_set, batch_size=64, shuffle=False)# 3. 定义神经网络模型
class SimpleCNN(nn.Module):def __init__(self):super(SimpleCNN, self).__init__()self.conv1 = nn.Conv2d(1, 32, kernel_size=3, padding=1)self.conv2 = nn.Conv2d(32, 64, kernel_size=3, padding=1)self.pool = nn.MaxPool2d(2, 2)self.fc1 = nn.Linear(64*7*7, 128)self.fc2 = nn.Linear(128, 10)self.dropout = nn.Dropout(0.25)def forward(self, x):x = self.pool(torch.relu(self.conv1(x)))x = self.pool(torch.relu(self.conv2(x)))x = x.view(-1, 64*7*7)x = self.dropout(x)x = torch.relu(self.fc1(x))x = self.dropout(x)x = self.fc2(x)return xmodel = SimpleCNN().to(device)# 4. 定义损失函数和优化器
criterion = nn.CrossEntropyLoss()
optimizer = optim.Adam(model.parameters(), lr=0.001)# 5. 训练函数
def train(model, loader, criterion, optimizer, epoch):model.train()running_loss = 0.0correct = 0total = 0pbar = tqdm(loader, desc=f'Epoch {epoch}')for images, labels in pbar:images, labels = images.to(device), labels.to(device)optimizer.zero_grad()outputs = model(images)loss = criterion(outputs, labels)loss.backward()optimizer.step()running_loss += loss.item()_, predicted = torch.max(outputs.data, 1)total += labels.size(0)correct += (predicted == labels).sum().item()pbar.set_postfix({'loss': running_loss/(pbar.n+1),'acc': 100.*correct/total})return running_loss/len(loader), correct/total# 6. 测试函数
def test(model, loader, criterion):model.eval()running_loss = 0.0correct = 0total = 0with torch.no_grad():for images, labels in loader:images, labels = images.to(device), labels.to(device)outputs = model(images)loss = criterion(outputs, labels)running_loss += loss.item()_, predicted = torch.max(outputs.data, 1)total += labels.size(0)correct += (predicted == labels).sum().item()return running_loss/len(loader), correct/total# 7. 训练循环
num_epochs = 5
for epoch in range(1, num_epochs+1):train_loss, train_acc = train(model, train_loader, criterion, optimizer, epoch)test_loss, test_acc = test(model, test_loader, criterion)print(f'\nEpoch {epoch}:')print(f'Train Loss: {train_loss:.4f}, Acc: {train_acc:.2f}%')print(f'Test Loss: {test_loss:.4f}, Acc: {test_acc:.2f}%')# 8. 保存模型
torch.save(model.state_dict(), 'mnist_cnn.pth')
print("Model saved to mnist_cnn.pth")# 9. 示例预测
sample_image, _ = test_set[0]
model.eval()
with torch.no_grad():output = model(sample_image.unsqueeze(0).to(device))_, predicted = torch.max(output, 1)print(f"\nSample prediction: {predicted.item()}")
http://www.xdnf.cn/news/963127.html

相关文章:

  • Linux 阻塞非阻塞
  • Ubuntu24.04常见问题
  • AbMole推荐:Cisplatin,从机制到应用的全面了解
  • Hive实现值列表横向展示(非列转行)
  • 汽车扭杆综合试验机
  • 机器人模型文件urdf介绍
  • C++基础学习:深入理解类中的构造函数、析构函数、this指针与new关键字
  • JWT令牌如何在FastAPI中实现安全又高效的生成与验证?
  • 解锁数据库简洁之道:FastAPI与SQLModel实战指南
  • 1.2 git使用
  • 小程序中的状态管理库-mobx-miniprogram
  • 【深尚想】SX1276IMLTRT LoRa射频收发器芯片 物联网 电子元器件解析
  • 在鸿蒙HarmonyOS 5中实现抖音风格的草稿箱功能
  • Kafka 的容错与持久性:副本复制机制的工作原理与实践
  • 实现安全、经济、节约、环保的智慧交通开源了
  • JBank:Jucoin 推出的 Web3 去中心化自托管银行金融协议
  • error: Sandbox: rsync(17136) deny(1) file-write-create
  • 汽车生产虚拟实训中的技能提升与生产优化​
  • 机器学习的可解释性
  • 项目课题——智能花盆系统设计
  • “机器学习中的‘Hello World‘:为什么我们总用MNIST数据集,以及何时该放弃它“
  • 机器学习中的优化问题描述
  • 在多云环境透析连接ngx_stream_proxy_protocol_vendor_module
  • ffmpeg 新版本转码设置帧率上限
  • 搭建gitlab ci/cd runner实现对c++项目的自动编译和打包
  • 51c嵌入式※~电路~合集32~PWM
  • 入门机器学习需要的统计基础
  • ArcGIS+AI:涵盖AI大模型应用、ArcGIS功能详解、Prompt技巧、AI助力的数据处理、空间分析、遥感分析、二次开发及综合应用等
  • 置信水平、置信区间
  • ArcGIS土地利用数据制备、分析及基于FLUS模型土地利用预测技术应用