From 590c3d6728920f0fde4f10d45a6a5b55ac1b2212 Mon Sep 17 00:00:00 2001 From: Gurjus Bhasin <48339289+gsbhasin123@users.noreply.github.com> Date: Sat, 15 Feb 2020 15:37:41 -0800 Subject: [PATCH 1/4] Don't undermine python even though I'm a ruby guy --- guess.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/guess.py b/guess.py index 3a28086..569d019 100644 --- a/guess.py +++ b/guess.py @@ -7,11 +7,10 @@ print('Hello! What is your name?') name = input() -print("Hi, {}. I'm thinking of a number from 1 and 20.".format(name)) +print(f"Hi, {name}. I'm thinking of a number from 1 and 20.") while guesses < 6: - - print('What is your guess. You have {} more guesses.'.format(6-guesses)) + print(f'What is your guess? You have {6 - guesses} more guesses.') guess = input() guess = int(guess) @@ -22,8 +21,8 @@ elif guess > number: print('Too high.') elif guess == number: - print('Good job, {}! You guessed my number in {} guesses!'.format(name,guesses)) + print(f'Good job, {name}! You guessed my number in {guesses} guesses!') break if guess != number: - print('Nope. The number I was thinking of was {}.'.format(number)) + print(f'Nope. The number I was thinking of was {number}.') From 76898ea4d04d46ba9a80747aca0416168e93de9d Mon Sep 17 00:00:00 2001 From: tiosgz Date: Wed, 1 Dec 2021 20:11:06 +0000 Subject: [PATCH 2/4] Depythonize ruby example Some other rubyists may disagree with my version, & i encourage them to fix it. However, it's definitely more rubyish than the previous version. --- guess.rb | 26 ++++++++------------------ readme.md | 23 +++++++---------------- 2 files changed, 15 insertions(+), 34 deletions(-) diff --git a/guess.rb b/guess.rb index 18a7c52..1c5bdf0 100644 --- a/guess.rb +++ b/guess.rb @@ -1,30 +1,20 @@ number = rand(1..20) -guesses = 0 puts 'Hello! What is your name?' -name = gets.chomp.to_s +name = gets&.chomp -puts "Hi, #{name}. I'm thinking of a number between 1 and 20." +puts "Hi, #{name}. I'm thinking of a number between 1 and 20." -while guesses < 6 +1.upto 6 do |guesses| + puts "What is your guess? You have #{7 - guesses} more guesses." + guess = gets&.chomp.to_i - puts "What is your guess? You have #{6-guesses} more guesses." - guess = gets.chomp.to_i - guesses += 1 - - unless guess == number - message = if guess > number - "Too high" - else - "Too low" - end - puts message - else + if guess == number puts "Good job, #{name}! You guessed my number in #{guesses} guesses." exit + else + puts(guess > number ? 'Too high' : 'Too low') end - end puts "Nope. The number I was thinking of was #{number}." - diff --git a/readme.md b/readme.md index 95bc710..79d2491 100644 --- a/readme.md +++ b/readme.md @@ -281,31 +281,22 @@ if guess != number: ```ruby number = rand(1..20) -guesses = 0 puts 'Hello! What is your name?' -name = gets.chomp.to_s +name = gets&.chomp puts "Hi, #{name}. I'm thinking of a number between 1 and 20." -while guesses < 6 - - puts "What is your guess? You have #{6-guesses} more guesses." - guess = gets.chomp.to_i - guesses += 1 +1.upto 6 do |guesses| + puts "What is your guess? You have #{7 - guesses} more guesses." + guess = gets&.chomp.to_i - unless guess == number - message = if guess > number - "Too high" - else - "Too low" - end - puts message - else + if guess == number puts "Good job, #{name}! You guessed my number in #{guesses} guesses." exit + else + puts(guess > number ? 'Too high' : 'Too low') end - end puts "Nope. The number I was thinking of was #{number}." From 21df6f91a6cf4fe0f946a61d162552c187c0f5d9 Mon Sep 17 00:00:00 2001 From: tiosgz Date: Wed, 1 Dec 2021 20:15:06 +0000 Subject: [PATCH 3/4] Sync readme python example with guess.py --- readme.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/readme.md b/readme.md index 79d2491..f281cd9 100644 --- a/readme.md +++ b/readme.md @@ -255,11 +255,10 @@ guesses = 0 print('Hello! What is your name?') name = input() -print("Hi, {}. I'm thinking of a number from 1 and 20.".format(name)) +print(f"Hi, {name}. I'm thinking of a number from 1 and 20.") while guesses < 6: - - print('What is your guess. You have {} more guesses.'.format(6-guesses)) + print(f'What is your guess? You have {6 - guesses} more guesses.') guess = input() guess = int(guess) @@ -270,11 +269,11 @@ while guesses < 6: elif guess > number: print('Too high.') elif guess == number: - print('Good job, {}! You guessed my number in {} guesses!'.format(name,guesses)) + print(f'Good job, {name}! You guessed my number in {guesses} guesses!') break if guess != number: - print('Nope. The number I was thinking of was {}.'.format(number)) + print(f'Nope. The number I was thinking of was {number}.') ``` #### Ruby From 9f106cc3468f56a90d274d520db8622f98d7ea0c Mon Sep 17 00:00:00 2001 From: tiosgz Date: Wed, 1 Dec 2021 20:16:52 +0000 Subject: [PATCH 4/4] Make scripts executable --- guess.py | 2 ++ guess.rb | 2 ++ 2 files changed, 4 insertions(+) mode change 100644 => 100755 guess.py mode change 100644 => 100755 guess.rb diff --git a/guess.py b/guess.py old mode 100644 new mode 100755 index 569d019..8fb3b11 --- a/guess.py +++ b/guess.py @@ -1,3 +1,5 @@ +#!/usr/bin/python3 + import random diff --git a/guess.rb b/guess.rb old mode 100644 new mode 100755 index 1c5bdf0..f15c2dc --- a/guess.rb +++ b/guess.rb @@ -1,3 +1,5 @@ +#!/usr/bin/env ruby + number = rand(1..20) puts 'Hello! What is your name?'