Explicar el funcionamiento de transaction.atomic()

publicado por: Anonymous Estoy empezando un proyecto en django y mirando ejemplos veo que usan transaction.atomic() para guardar en la base de datos pero no comprendo exactamente el funcionamiento. solución Intentaré explicarlo con un ejemplo. Imagina que tienes una clase cuenta donde vamos a almacenar un importe. Algo así: from django.db import models from django.contrib.auth.models…(Continue Reading)

‘int’ object is not subscriptable. Listas en Python

publicado por: Anonymous Buenas tardes, estoy haciendo un programa sencillo a modo didáctico que se encarga de llegar a un numero X con ciertas operaciones. Mi código es el siguiente: ##Los numeros de la persona numeroP1 = [0,0,0,0] numeroP2 = [0,0,0,0] ##Los numeros de la computadora numeroC1 = [0,0,0,0] numeroC2 = [0,0,0,0] numeroC3 = [0,0,0,0]…(Continue Reading)

Hacer click a un boton para abrir un archivo pdf en python y QT

publicado por: Anonymous Soy novato programando en Python y mi idea es que al hacer click en el botón que llame “Botonawg” se abra un archivo pdf. Me gustaría que esto funcionara tanto en windows como en sistemas UNIX. Yo uso GNU-Linux ARCh. Hice este código pero me da el siguiente error: NameError: name ‘QtCore’…(Continue Reading)

pythonドックテストのエラーについて

投稿者: Anonymous pythonをやってみようと思い環境が正常動作するか試しにネットにあったソースを動かしてみました。 環境: windows10 64bit python 2.7,3.6 ソースのあったサイトです バージョンはわかりませんでしたが2,3両方で動きました 下記がそのコードです。 #! /usr/bin/env python # -*- coding: utf-8 -*- import heapq class Dijkstra(object): def dijkstra(self, adj, start, goal=None): ”’ ダイクストラアルゴリズムによる最短経路を求めるメソッド 入力 adj: adj[i][j]の値が頂点iから頂点jまでの距離(頂点iから頂点jに枝がない場合,値はfloat(‘inf’))となるような2次元リスト(正方行列) start: 始点のID goal: オプション引数.終点のID 出力 goalを引数に持つ場合,startからgoalまでの最短経路を格納したリストを返す 持たない場合は,startから各頂点までの最短距離を格納したリストを返す >>> d = Dijkstra() >>> d.dijkstra([[float(‘inf’), 2, 4, float(‘inf’), float(‘inf’)], [2, float(‘inf’), 3, 5, float(‘inf’)],…(Continue Reading)

Keras optimizer.get_updates(), K.function()のパラメータで[]は何ですか?

投稿者: Anonymous def critic_optimizer(self): #placeholder for target??? disc_reward = K.placeholder(shape=(None,1)) #output of critic value = self.critic.output #MSE error loss = K.mean(K.square(disc_reward – value)) optimizer = Adam(lr=self.critic_lr) #what is the second [] parameter??? updates = optimizer.get_updates(self.critic.trainable_weights, [], loss) #[] is an empty list for outputs? https://www.tensorflow.org/api_docs/python/tf/keras/backend/function train = K.function([self.critic.input, disc_reward], [], updates=updates) return train 上記はA2CをKerasにて書いた例ですが、パラメータの[]が何か分かりません。 以下のメソッドでコールされてます。…(Continue Reading)

pandas.dataframeからilocを用いて必要なデータだけを抜き出した際に表示されるワーニングについて教えてください。

投稿者: Anonymous pandasのデータフレーム(df2)から必要な行列だけを抜き出すために、下記のような操作をした際に表示されるワーニングについて。 df2 = df.iloc[0:3201,:] #必要なデータだけ抜き出し df2 = df2.astype(float) #データ型変更:実数 df_index = df2.iloc[:,0] df_alfa = df2.iloc[:,np.arange(1, 27, 3)] A value is trying to be set on a copy of a slice from a DataFrame. Try using .loc[row_indexer,col_indexer] = value instead See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy ilocではなく、locで”カラム名で指定”を推奨していることなのでしょうか? 計算、グラフ作成は問題なくできているのですが、気になっております。 <質問追記2018/10/16> magichansさんへ プログラムを再度確認してみると、 上記ではなく下記のところで表示されているエラーのようです(すみません)。 次のような計算にすすみ、…(Continue Reading)

pythonの正規表現でn個目のカンマを削除する

投稿者: Anonymous x = ‘項目1,項目2,氏,名,年齢,住所,備考’ 氏,名の間の,を消したい。 re.sub(r”,”,X) ご教示よろしくお願いします。 解決 3個目のカンマだけをグループから除外する方法です。 import re x = ‘項目1,項目2,氏,名,年齢,住所,備考’ re.sub(‘^(([^,]+,[^,]*){2}),(.+)$’, ‘\1\3’, x) 回答者: Anonymous

¿Cómo manejar el evento de cerrar ventana en tkinter?

publicado por: Anonymous Tengo una ventana principal y necesito que al oprimir el botón X de cerrar ventana, se pida una confirmación de si desea realmente cerrar la aplicación o hacer otra cosa. ¿Cómo puedo capturar este evento para realizar una determinada acción cuando ocurra? solución Puedes interactuar entre la aplicación y el gestor de…(Continue Reading)

この2つのコードのどこが異なるのか教えて下さい。

投稿者: Anonymous python3系で除算をしたあとの整数への変換にいつもint()を使っていましたが、AtCoderの他の人の回答を見ると//を使用していました。 a = 3 / 2 print(int(a)) # 今までのやり方 a = 3 // 2 print(a) # 正しいやり方(?) 確かにAtCoderでもint()を使うと間違いと判定され、//に変えてみたところ正解になった問題がありました。 自分では違いが全くわかっていませんが、全然違うものなのでしょうか? 追記:質問の仕方が悪かったので補足します。 int()を使う場合と//を使う場合出力される結果は同じになると思いますが、AtCoderでコードを提出したところint()で整数に変換したものは間違いと判定されてしまいました。 //で最初から整数値のみを算出したものは正解と判定されたので不思議と思って質問しました。 それぞれの意味はおおまかには理解していますが、結果が変わる場合があることは認識していませんでした。 違う結果が出力される場合はどのようなときなのでしょうか? 参考までにそれぞれのコードを貼っておきます。 # 間違いと判定されたコード n, a, b = map(int, input().split()) if (b – a) % 2 == 0: ans = (b-a)/2 else: ans = min(a-1, n-b) + 1 + (b-a-1)/2…(Continue Reading)

VSCode で Python スクリプトを実行すると SyntaxError: Non-ASCII character ‘xe3’

投稿者: Anonymous タイトルの通りです。言語はPython3です。IDLEで作って動いてたコードを、VS codeで実行すると SyntaxError: Non-ASCII character ‘xe3’ in file /Users/TAKA/Downloads/SpaceTAKA/ランダム俳句.py on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details と表示されます。これはどういうことでしょうか?よろしくお願いします。 解決 エラーメッセージの指摘は、 「/Users/TAKA/Downloads/SpaceTAKA/ランダム俳句.pyというファイルにASCIIではない文字[(unicodeなどの多バイト文字コードの文字(漢字、ひらかな等))]が含まれている。 それなのに、["# coding: UTF-8"というような]使用文字コードの宣言が為されていない。」という事です。 ([]内は、私が補足した部分) /Users/TAKA/Downloads/SpaceTAKA/ランダム俳句.pyの先頭に、"# coding: UTF-8"という行を追加したら解決するのではないかと思われます。 回答者: Anonymous

¿Como comparar 2 listas en python 3?

publicado por: Anonymous Estoy trabajando en Python 3.4, Tengo 2 listas: lista_1 = [‘2017-10-01’, ‘2017-10-02’, ‘2017-10-03’, ‘20107-10-04’] # Fechas de un periodo lista_2 = [[‘20107-10-01’, campo2, campo3], [‘2017-10-03’, campo2, campo3], [‘2017-10-04’, campo2, campo3]] #Datos a analizar Quiero comparar las dos listas para ver si el primer dato (fecha) de cada sub lista de la lista_2…(Continue Reading)

¿Cómo usar rutas relativas en python con una ruta base variable?

publicado por: Anonymous Quisiera saber cómo puedo crear una variable con una ruta base, a partir de la cual, con una ruta relativa, se llegue a la ubicación de un archivo. Por ejemplo, si creo una ruta base: Rutabase = ‘C:/Prueba/’ y recibo una ruta relativa: Rutarel = ‘Carpeta1/Archivo1.txt’ El resultado querría que fuera: Rutasol…(Continue Reading)

pandas DataFrameで特定条件で選択した行から指定のカラムだけ取得したい

投稿者: Anonymous 以下のようなpandas DataFrameがあります。 import pandas as pd import numpy as np df = pd.DataFrame(np.arange(30).reshape(10,3),columns=pd.Index([‘one’,’two’,’three’])) 特定条件で選択した行は以下のように簡単に取得できます。 例えば、twoカラムの10より大きい数の行を取得するには以下のようにしています。 df[df[‘two’]>10] しかし本当に欲しいのはこの条件で取得したDataFrameのthreeカラムだけを取得したいです。 簡単に一行で取得するにはどうすればいいでしょうか? df2 = df[df[‘two’]>10] df3 = df2[‘three’] とすれば取得可能ですが、もっとスマートにしたいです。1行で書けないものでしょうか? ご指導よろしくお願いいたします。 解決 通常はこのように書くことが多いです。 df.loc[df[“two”] > 10, “three”] 回答者: Anonymous

GolangでPythonのパッケージをアップデートするプログラムについて

投稿者: Anonymous Golangでpythonのパッケージ全てを並列実行で高速に最新にするものを作りたいのですが、どうすればいいのでしょうか? goルーチンを使い、書いてみましたが下記のPythonのスクリプトより遅くなってしまいます。 Golangでマルチプロセスで実行するにはどうすればいいのでしょうか? 下記のPythonスクリプトのようなことをGolangで実現したいと思っています。 #!/usr/local/bin/python3.4 # coding:utf-8 from multiprocessing import Process import re import subprocess import os def u(v): os.system(“echo ‘mypassword’ | sudo -S -H -p ” pip3.4 install ” + v + ” -U”) output = subprocess.check_output([“pip3.4”, “freeze”]).decode() output_list = re.findall(“.+(?===)”, output) output_list.extend([“pip”, “setuptools”]) print(output_list) for v in output_list: Process(target=u, args=(v,)).start() package…(Continue Reading)

¿Cómo se ajusta la escala logarítmica en un gráfico de dispersión (plot.scatter)?

publicado por: Anonymous Requiero presentar un gráfico de dispersión en escala logarítmica de los siguientes array: x =[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 39,…(Continue Reading)

Operaciones entre elementos de distintas listas Python

publicado por: Anonymous Necesito realizar una operación divisoria entre items de dos listas diferentes. import pandas as pd df = pd.read_csv(‘este_mes_subastas2.csv’, sep=’,’) a = list(df[‘Subastas’]) b = list(df[‘Impresiones’]) print a >>> [39496098, 82823040, 81547406, 87863582, 84646788, 46192389, 42343494, 84741570, 90058153, 90184289, 87520960] print b >>> [39496098, 456, 81521406, 63125282, 112236788, 678765389, 42343494, 84741570, 90058153, 90184289,…(Continue Reading)

¿Cómo cerrar ventana principal al cerrar ventana secundaria (TopLevel)?

publicado por: Anonymous Tengo una aplicación que abre una ventana principal (Tk()) y después dejo de trabajar en esa ventana principal, la oculto y abro una nueva (TopLevel()), cuando presiono la X que por defecto traen todas las ventanas para cerrarlas (en esa ventana secundaria), me doy cuenta que no se mata el loop de…(Continue Reading)

hacer click boton con selenium

publicado por: Anonymous Hola soy nuevo con Selenium. Este es el codigo del boton donde deseo hacer click <a href=”javascript:bp(26834)”>Clic para ver</a> Navego hasta la pagina indicada pero no se reflaja la accion de click que deberia mostrar un dato oculto. Este el codigo que utilizo login_attempt = browser.find_element_by_xpath(“//*[@name=’bt’]”) login_attempt.click() Les agradeceria su ayuda. Saludos.…(Continue Reading)

ValueError: unconverted data remains al convertir una cadena a datetime

publicado por: Anonymous Importo la librería import datetime Consulto y traigo la fecha miFecha.set(BBDDEscuela[6]) c=miFecha Calculo_Dias(c) miConexion.commit() Función para restar las dos fechas def Calculo_Dias(b): a = datetime.datetime.today() f = datetime.datetime.strptime(str(b.get()), ‘%d/%m/%y’) miDias.set((a-f).days) Me aparece este error ValueError: unconverted data remains: 90 b es una StringVar cuyo contenido en este caso es “09/07/1990” solución El…(Continue Reading)

ログインユーザの名前を取得

投稿者: Anonymous djangoでHTML上でログインユーザ名の取得を行いたいのですが、 カスタムユーザで認証をユーザ名からメールアドレスに変更した影響で HTML上で’user.username’ないし’user.get_username’で取得される値はメールアドレスになってしまいます。 class UserManager(BaseUserManager): use_in_migrations = True def _create_user(self, email, password, **extra_fields): if not email: raise ValueError(‘The given email must be set’) email = self.normalize_email(email) user = self.model(email=email, **extra_fields) user.set_password(password) user.save(using=self._db) return user def create_user(self, email, password=None, **extra_fields): extra_fields.setdefault(‘is_staff’, False) extra_fields.setdefault(‘is_superuser’, False) return self._create_user(email, password, **extra_fields) def create_superuser(self, email, password, **extra_fields): extra_fields.setdefault(‘is_staff’,…(Continue Reading)

pipでmklnkがインストールできない

投稿者: Anonymous 以下質問 PythonでWindowsのショートカットを作成したい でmklnkで実現可能とのことですが、pip install mklnkでインストールできません。 (ググりましたが、mklnkのページはほとんど出現しませんでした。) pip install mklnk ERROR: Could not find a version that satisfies the requirement mklnk (from versions: none) ERROR: No matching distribution found for mklnk となっています。pipだとインストールできない、ということでよろしいのでしょうか? その場合、どのように実行するのでしょうか。 わかる方、よろしくお願いいたします。 実行環境 Windows 10 Python 3.7 解決 前回解答しました。mklnkはそもそもpipに存在しないので、とりあえず手動で実行するディレクトリに置けばよいと思います。また、 https://github.com/strayge/pylnk は python3 に対応しています。実際、私もpython3で動作を確認しています。次のようなディレクトリ構造にしてmain.pyを実行しました。 working_directory/ pylnk.py # https://github.com/strayge/pylnk/blob/master/pylnk3.py から取得 mklnk.py # https://github.com/blacklanternsecurity/mklnk/blob/master/lnk.py から取得…(Continue Reading)

三次元で点と点を繋げるには?

投稿者: Anonymous 下記の過去質問に関連したプログラムです。 matplotlibの表示について 10種類のテキストファイルを読み込んで、[] の格納して表示するプログラムとなっています。 データは今(X、Z)の二次元配列です。 import matplotlib.pyplot as plt import os import tkinter from tkinter import messagebox from tkinter import filedialog root = tkinter.Tk() root.title(‘微小山’) #タイトル root.geometry(‘400×200’) #サイズ 横x縦 messagebox.showinfo(‘select’,’測定データ’) fileType = [(‘テキストァイル’,’*.txt’)] #ファイルタイプを指定 iniDir1 = os.path.abspath(os.path.dirname(__file__)) #初期表示フォルダ filepath1 = filedialog.askopenfilename(filetypes=fileType,initialdir = iniDir1) messagebox.showinfo(‘選択したファイル’,filepath1) fileType = [(‘テキストァイル’,’*.txt’)] #ファイルタイプを指定 iniDir2 = os.path.abspath(os.path.dirname(__file__)) #初期表示フォルダ filepath2…(Continue Reading)

文字列からアカウントだけを取得する

投稿者: Anonymous 実装したい内容 CSVで書き込んだ(tweet.text)から取得したtextのツイートを@mikipddw2on11のみ取得したいです。 ツイート(text) RT @mikipddw2on11: 今日の天気 #PR https://t.covIC68vSr4545 RT @mikipddw2on11:の文字から始まりますが、別のツイートからRTがない場合 今日の天気から文字はじめます。 取得したいのは、@mikipddw2on11のみだけです。 文字列は毎回異なりますが、RTがない場合、セルを空白にしたいです。 実装とエラー 他の方から別の質問にて正規表現でマッチさせる方法があると教えていただきましたが、 下記の2パターンの方法でやってみましたが、下記のようにエラーが表示されます。 コード① import tweepy import csv import re consumer_key = “” consumer_secret = “” access_key = “” access_secret = “” auth = tweepy.OAuthHandler(consumer_key, consumer_secret) auth.set_access_token(access_key, access_secret) api = tweepy.API(auth) #ツイート取得 tweet_data = [] data = api.get_user for tweet…(Continue Reading)

dataframeの各セルのlistを分解して新たな変数にするには?

投稿者: Anonymous 次のような各セルにリストが入ったdataframeがあります。 import pandas as pd df = pd.DataFrame( {‘x’: [[‘都営三田線/水道橋駅 歩4分’, ‘JR中央線/水道橋駅 歩3分’], [‘東京メトロ東西線/飯田橋駅 歩5分’, ‘東京メトロ東西線/九段下駅 歩7分’, ‘JR中央線/水道橋駅 歩8分’], [‘JR山手線/神田駅 歩6分’]]}, index=[1, 2, 3]) このxを分解して、x1, x2, x3のような変数を新たに作成したいのですが、 ご教示頂けないでしょうか? x1, x2, x3 都営三田線/水道橋駅 歩4分, JR中央線/水道橋駅 歩3分, nan 東京メトロ東西線/飯田橋駅 歩5分, 東京メトロ東西線/九段下駅 歩7分, JR中央線/水道橋駅 歩8分 JR山手線/神田駅 歩6分, nan, nan 解決 下記では如何でしょうか。 splitted = df[‘x’].apply(pd.Series) splitted.columns =…(Continue Reading)

python マルチスレッドで共有変数の更新方法

投稿者: Anonymous python でマルチスレッドを勉強中です 以下のようなクリティカルセッションでカウンタを増やすだけのプログラムを書いたのですが LOCKを入れた途端デッドロックしてるのか何も表示されなくなります import concurrent.futures import time import threading LOCK = threading.Lock() count = 0 def func1(): with LOCK: # この行がなければ動く count += 1 print(count) if __name__ == “__main__”: executor = concurrent.futures.ThreadPoolExecutor(max_workers=2) while True: executor.submit(func1) time.sleep(1) LOCK.acquire(blocking=True) count += 1 LOCK.release() と書いても同じです count += 1 は絶対脱出するはずなのでデッドロックは起きようがないと思うんですが C の pthread_mutex_lock のようなものではないんでしょうか 解決 グローバル変数宣言をしていないため、実行時にUnboundLocalErrorが起こっていることが原因です。…(Continue Reading)

テキストファイル読み込みの際のエンコードが勝手に変わる?

投稿者: Anonymous 環境 – Windows7 – Python2.7 – Sublime Text3 対象はヘッダーを含む16bitのImgファイル(X線測定で得た画像ファイル)です. ヘッダーの編集を自動化するために,テキストファイルとして読み込んで一部を書き換える,ということをしようとしています. ファイルサイズが14Mbと比較的大きいため,コーディングしているときは,ヘッダー部だけをあらかじめ切り出し,拡張子をimgにしたファイルを使用していました. そのときは下のように,ファイルをエディタで開いたときと同じような配列 522d 4158 4953 2d43 5320 312e 302d 322e 3020 2020 476c 7963 696e 6520 2020 2020 2020 2020 2020 2020 7472 6967 6f6e 616c… が取り出せていたのですが,いざ元のimgファイルに対してプログラムを実行したところ,取り出せたのは R-AXIS-CS 1.0-2.0 Glycine trigonal @[email protected]@xaffxcfBxb4x00x00Bxb4x00x00Bxf0x00x00P31x00m … のように,エンコードが変わった(?)ものになってしまいました. 単にファイルをopen()してreadline()しただけなのですが... with open(‘sample.img’, ‘rb’) as f: for i in…(Continue Reading)

Numeros enteros en pandas python “dataframe”

publicado por: Anonymous Importo un documento a jupiter e ingresa normal con numeros enteros, aplico una fórmula para agrupar, sumar y luego restar y el producto salen todos los números con decimales y exponenciales. ¿Cómo obtengo sólo números enteros??? ::::::: adjunto código :::::::::: mydataset_df.head(10) cond1_df = ( mydataset_df .groupby([“move_id/id”], as_index=False) .sum() .assign( balance=lambda row: row.credit…(Continue Reading)

PythonのClassの実行する順番について

投稿者: Anonymous Pythonのクラスについてお聞きしたいのですが、クラス内のdefは上から順番に読み込まれていくのではないのでしょうか? 以下のようなプログラムがあります。 class API(Person): def __init__(self, FBtoken): # Facebookのトークンを元に、tinderのトークンを取得します。 params = {“token”: FBtoken} with requests.Session() as s: headers = { “User-Agent”: “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36”} s.headers.update(headers) response = s.post( “https://api.gotinder.com/v2/auth/login/facebook”, data=json.dumps(params)) if response.status_code == 401: # 予期せぬトラブル sys.exit(1) data = json.loads(response.text)[“data”] self.id = data[“_id”]…(Continue Reading)

Mensaje de error: “io.UnsupportedOperation: not readable” en Python

publicado por: Anonymous Quiero hacer un programita que lea un archivo txt y genere un lista de líneas de dicho archivo. El código que tengo es el siguiente: f = open(“rutas de archivos.txt”,”w”,encoding=”utf8″) linesfilelist = f.readlines() f.close() Al ejecutar este programa me sale el siguiente mensaje de error: Traceback (most recent call last): File “C:…”,…(Continue Reading)