迴圈語句及字串的特性與應用

2021-08-22 16:20:43 字數 4216 閱讀 9292

1.迴圈語句

c語言:

sum = 0

for(int i=1; i<100; i++):

sum = sum + i

0+1+2+3+...100      此演算法求的是1加到100的總和

python:

sum = 0

for i in range(1,101):   # i=1,2,3....100

sum = sum + i

print(sum)                   python求前100的和

range(a,b,c)  解釋:從a開始到b-1   之間間隔為c

例:    >>> range(1,10)

[1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> range(1,10,2)

[1, 3, 5, 7, 9]

>>> range(7)

[0, 1, 2, 3, 4, 5, 6]

迴圈語句的應用:

(1)使用者登入系統

1.輸入使用者名稱和密碼;

2. 判斷使用者名稱和密碼是否正確? (name='root', passwd='westos')

3. 為了防止暴力破解, 登陸僅有三次機會, 如果超過三次機會, 報錯提示;

# 為了讓登陸**迴圈三次

for i in range(3):                        

name = input("使用者名稱:")

passwd = input("密碼:")

if name == 'root' and passwd == 'westos':

print("登陸成功")

break                               #跳出整個迴圈

else:

print("登陸失敗")

print("您還剩餘%d次機會" %(2-i))

else:

print("登陸次數超過三次, 請等待100s後再次登陸")

break:跳出整個迴圈,不會執行迴圈裡的內容

comtinue:跳出本次迴圈,continue後面的**不在=再執行,但還會繼續迴圈

exit:結束程式的執行

示例如下:

# 0,1,2,3,4....9

for i in range(10):

if i == 5:

# break

continue

print(i)

這時列印出的數字為0,1,2,3,4,6,7,8,9

使用者登入

1. 輸入使用者名稱和密碼;

2. 判斷使用者名稱和密碼是否正確? (name='root', passwd='westos')

3. 為了防止暴力破解, 登陸僅有三次機會, 如果超過三次機會, 報錯提示;

for i in range(3):

name = input("

使用者名稱:")

passwd = input("密碼:")

if name == 'root' and passwd == 'westos':

print("登陸成功")

break

else:

print("登陸失敗")

print("您還剩餘%d次機會" %(2-i))

else:

print("登陸次數超過三次, 請等待100s後再次登陸")

輸入兩個數值:

求兩個數的最大公約數和最小公倍數.

最小公倍數=(num1*num2)/最大公約數

"""# 2,3

# 2,6

# 1. 輸入兩個數值: input接收的是字串型別

num1 = int(input('num1:'))

num2 = int(input('num2:'))

# 2. 找出兩個數中的最小值

# min_num = min(num1, num2)

min_num = num1 if num1

%s" %(num1, num2, lcm))

2.字串的特性

>>> s = "hello"

# 正向索引

>>> s[1]

'e'>>> s[0]

'h'>>> s[4]

'o'# 反向索引

>>> s = "hello world"

>>> s[-1]

'd'>>> s[-2]

'l'>>> s[-3]

'r'# 切片

s[start:end:step]   # 從start開始到end-1結束, 步長為step;

- 如果start省略, 則從頭開始切片;

- 如果end省略, 一直切片到字串最後;

s[1:]

s[:-1]

s[::-1]    # 對於字串進行反轉

s[:]        # 對於字串拷貝

>>> s = "hello"

# 正向索引

>>> s[1]

'e'>>> s[0]

'h'>>> s[4]

'o'# 反向索引

>>> s = "hello world"

>>> s[-1]

'd'>>> s[-2]

'l'>>> s[-3]

'r'字串的連線

>>> a = "hello"

>>> b = "python"

>>> print("%s %s" %(a, b))

hello python

>>> a + b

'hellopython'

>>> a + " " +b

'hello python'

字串的分離與拼湊

split:分離

join:拼湊

>>> ip = "172.25.254.19"

>>> ip1 = "1172.25.254.19"

>>> help(ip1.split)

>>> ip1.split('.')

['1172', '25', '254', '19']

>>> date = "2018-2-30"

>>> date.split("-")

['2018', '2', '30']

>>> date.replace('-', '/')

'2018/2/30'

>>> ip = ['1172', '25', '254', '19']

>>> "".join(ip)

'11722525419'

>>> ":".join(ip)

'1172:25:254:19'

>>> "*".join(ip)

'1172*25*254*19'

"""python的內建函式

>> min(2,4)                       最小值

>>> max(2,5)                    最大值

5>>> sum(range(1,101))      前100的和

5050

>>> sum(range(2,101,2))    前100的偶數和

2550

>>> sum(range(1,101,2))    前100的奇數和

2500

# 列舉: 返回索引值和對應的value值

;>>> for i,v in enumerate('hello'): 

...     print(str(i) +" -----> " + v)

...0 -----> h

1 -----> e

2 -----> l

3 -----> l

4 -----> o

# zip

>>> s1 = 'abc'

>>> s2 = "123"

>>> for i in zip(s1,s2):

...     print(i)

...('a', '1')

('b', '2')

('c', '3')

>>> for i in zip(s1,s2):

...     print("".join(i))

...a1

b2c3

>>> for i in zip(s1,s2):

...     print("-".join(i))

for迴圈練習及字串處理

今天主要是做了一些for迴圈習題的練習,以及學習了一些字串處理。先看一下字串處理 時間方法 var time new date var year time.getfullyear var second time.getseconds var month time.getmonth 1 據說是程式設計...

python 變數 字串 條件語句 迴圈結構

變數 變數名就像我們的名字,在計算機中,把乙個值賦值給乙個名字後,ta就會儲存在記憶體中,我們稱之為變數。這種行為叫做 給變數賦值 使用 來賦值。字串的拼接 字串和字串的串聯 例 a b c b string,c string 變數名可以包括字母 數字 下劃線,但是不能以數字開頭 變數名區分大小寫。...

字串及字串的方法

一 字串 js中的任何資料型別都可以當作物件來看。所以string既是基本資料型別,又是物件。二 宣告字串 var sstr 字串 var ostr new string 字串 三 字串屬性 1.length計算字串的長度 不區分中英文 var str hello world console.log...