私がPythonのさまざまなファイルから関数を変更することが可能であるかどうか不思議です。異なるファイルの機能を変更するにはどうすればよいですか?
psrock.pyファイルの特徴は、それぞれのファイルから2つのデータを受け取り、それぞれのファイルがロックペーパーハサミで互いに競合し、勝ったプレーヤーを決定することです。もちろん、psrock.pyファイルには他の関数も含まれていますが、他の関数は私の質問にはあまり関係ないので、関数を1つだけ挿入しました。
私は、team3(team1、team2、team3があり、彼らがロックペーパーのはさみを互いに演奏するようにpsrock.pyファイルにある関数を編集しようとしています(つまりteam1とteam2は互いにチーム1と3の後、逆の場合も同様))結果は常にロックされ、相手の結果はハサミになり、チーム3は何があっても勝つことができます。
しかし、私は苦労して何をすべきかわかりません。:(私はほとんどPythonを学び始めていませんし、私にとってはかなり難しい課題です。 )
# This is a function from psrock.py file
import team3
def round(player1, player2, history1='', history2=''):
# Get player 1's move.
move1 = player1(my_history=history1, their_history=history2)
# Get player 2's move.
move2 = player2(my_history=history2, their_history=history1)
if valid(move1) and valid(move2):
if move1 == move2:
score1, score2 = 0, 0
elif move1+move2 in ['rs', 'sp', 'pr']:
score1, score2 = 1, -1
else:
score1, score2 = -1, 1
else: #one of the moves was invalid
if valid(move1): # only move2 was invalid
move2 = 'x'
score1, score2 = 1, -1
elif valid(move2): # only move1 was invalid
move1 = 'x'
score1, score2 = -1, 1
else: # Both moves invalid
move1, move2 = 'x', 'x'
score1, score2 = -1, -1
return move1, move2, score1, score2
...そして、私はteam3という名前の別のファイルからこの機能を編集しようとしている...
# Team 3 File
# -*- coding: utf-8 -*-
import psrock
def round(player1, player2, history1='', history2=''):
move1 = player1(my_history=history1, their_history=history2)
if player1 == team3:
move1 = 'r'
move2 = 's'
elif player2 == team3:
move1 = 's'
move2 = 'r'
ファイル:
- は、zipファイル
- 開き同じタブ
- psrock_play.pyファイルを再生
https://drive.google.com/file/d/0BxNi5bq6Cvnea0c4aVVIWUxZRUE/view?usp=sharing
のために、さらに検索し、あなたが「別のファイルからこの機能を編集」により、正確に何を意味するのですか? –
@JonathanMarchだから、基本的に、最初のファイルに「round(player1、player2、history1 = ''、history2 = '')」と呼ばれる関数があることがわかっていますか?私はそれが実行されるとき(またはそのような)別のファイルから何をするかを手動で変更するのではなく、ファイル#1の中で私の機能が何をするのかを変更しようとしています。だから、基本的にファイル#2では、私はそれをプレイヤー1または2がチーム3と等しいなら、それはチーム3のための 'r'と他のプレイヤーのための 's'となるようにしようとしています。 (ムーブ1はプレイヤー1、ムーブ2はプレイヤー2) –
あいまいな説明が残念です。私はまだこの問題を可能な限り説明する方法を見つけるのに苦労しています。 : –