LoginSignup
1
1

More than 3 years have passed since last update.

Pythonで気になる表現

Last updated at Posted at 2019-06-01

Pythonでアルゴリズム問題などを解いてる時に気になった表現をまとめてみた

普段Javascriptをいじっており、paizaなどではnode.jsで問題を解いていました。
Python+Djangoを使う機会があり、Pythonの学習で気になった表現をまとめてみました。
随時アップデートしていきたいと思います。

大文字小文字の変換


words = "hello, what's up?"
upperWords = words.upper()
print(upperWords) #HELLO, WHAT'S UP?

capitalWords = "WHAT A HECK!"
smallerWords = capitalWords.lower()
print(smallerWords) #what a heck

文字列後の空白の削除

#入力値
#Hey man
#How are you

import sys

lines = sys.stdin.readlines() # この場合は'\n'も含まれる。
print(lines) #lines = ["Hey man\n", "How are you\n"]

firstLine = lines[0].strip()
secondLine = lines[1].strip()

print(firstLine) #Hey man
print(secondLines) #How are you

入力値の掛け算

#入力値
# 3
input_line = input()
false_result = input_line * 4
print(false_result) #3333
true_result = int(input_line) * 4
print(true_result) #12 

len関数を使ったfor文

list = [a, b, c, d]
for i in range(len(list)): #iが0~4まで変わる
    print(list[i]) 
#a
#b
#c
#d

数字の結合


a = 1
b = 2
c = 3
result = str(a) + str(b) + str(c)
print(result) #123

末尾に要素の追加

#入力値
#5 
input = int(input())
list = [1, 3, 5]
list.append(input)
print(list) #[1, 3, 5, 5]

文字列の変更

s[i:j:k]
iからjまでkのステップで並び替える、文字を作り直すという意味。

##文字列の逆転
str = '1234'
str = str[::-1]
print(str) #4321

##2個飛ばしで出力
a = '123456'
a = a[0:7:2]
print(a) #135

配列の並びを逆に

1~100までの数字を作り、並び替えの挙動を考える。


list = []
array = []

for i in range(1,101):
    list.append(i)
for j in range(len(list)):
    array.append(str(list[j]))

print(array)#['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', '38', '39', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '50', '51', '52', '53', '54', '55', '56', '57', '58', '59', '60', '61', '62', '63', '64', '65', '66', '67', '68', '69', '70', '71', '72', '73', '74', '75', '76', '77', '78', '79', '80', '81', '82', '83', '84', '85', '86', '87', '88', '89', '90', '91', '92', '93', '94', '95', '96', '97', '98', '99', '100']
array.reverse()#配列を反転させる
print(array)#['100', '99', '98', '97', '96', '95', '94', '93', '92', '91', '90', '89', '88', '87', '86', '85', '84', '83', '82', '81', '80', '79', '78', '77', '76', '75', '74', '73', '72', '71', '70', '69', '68', '67', '66', '65', '64', '63', '62', '61', '60', '59', '58', '57', '56', '55', '54', '53', '52', '51', '50', '49', '48', '47', '46', '45', '44', '43', '42', '41', '40', '39', '38', '37', '36', '35', '34', '33', '32', '31', '30', '29', '28', '27', '26', '25', '24', '23', '22', '21', '20', '19', '18', '17', '16', '15', '14', '13', '12', '11', '10', '9', '8', '7', '6', '5', '4', '3', '2', '1']
num = ''.join(array)#配列を結合させる
print(num)#100999897969594939291908988878685848382818079787776757473727170696867666564636261605958575655545352515049484746454443424140393837363534333231302928272625242322212019181716151413121110987654321

最大数を求める

a = 1
b = 2 
c = 3

def largestNum(a, b, c):
   return max(a, b, c) #3

参考文献
https://hydrocul.github.io/wiki/programming_languages_diff/string/trim.html
https://algorithm.joho.info/programming/python/sys-stdin-readlines/
http://www.gesource.jp/programming/python/code/0011.html

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1