一些計算機的基本概念和PY下的字串操作

2020-08-11 17:38:21

1, 幾個計算機程式設計概念(以下基於PYTHON)

1.1 表達式

  • 表達式,是由數位、算符、數位分組符號(括號)、自由變數和約束變數等以能求得數值的有意義排列方法所得的組合
    例如:1+1 這就是個表達式

1.2 語句

  • 一個語法上自成體系的單位,它由一個詞或句法上有關連的一組詞構成

1.3 程式

  • 程式就是由一條一條的語句和一條一條的表達式構成的。
    例如:
i = 3
if i<10:
 print('hello world')

1. 4 函數

  • 函數就是一種語句,函數專門用來完成特定的功能
  • 形如:XXX()
  • 1.內建函數(內建函數)是由系統封裝好的一些方法 例如int() ord() str()等 2. 自定義函數 def XXXX():
  • 參數 ()中的就是函數的參數,可以有多個參數,但是多個參數要用逗號隔開 例如print(a,b,c,d)
  • 返回值
def abc(a):
     if a:
         return  '123'
     else :
         return  '321'
print(abc(1))

2 識別符號

  • python語言的組成
    • 關鍵字,識別符號,註釋,變數和數值,運算子,語句,函數,序列
  • 關鍵字:具有一些特殊功能的識別符號
  • 識別符號
    • 開發人員在程式中自定義的一些符號和名稱。識別符號是自己定義的,如變數名 、函數名等
  • 命名方式:
    • 駝峯命名法: 小駝峯:myName 大駝峯: MyName
    • 下劃線命名法:get_url
    • 不建議使用類似中文首字母等方式命名,會降低程式碼的可讀性

3 基本數據型別

  • 整數 1-1000 int 有一個最大數值 超過最大數值即爲記憶體溢位
  • 小數(浮點型) float
  • 布爾值和空值
    • 布爾值只有兩個值,一個是True一個是False 邏輯判斷
  • 空值 None 表示值不存在

4 變數

  • 變數是計算機記憶體中的一塊區域,儲存規定範圍內的值,值 可以改變,通俗的說變數就是給數據起個名字。
    • 變數的運算:需要注意的是在運算過程中含有浮點數,那麼他返回的就是一個浮點數型別

5.字串

  • 用一對單引號或者雙引號包裹的內容就是字串
    • 單引號和雙引號不能混合使用
    • 相同引號之間不能巢狀
  • 跳脫字元
    • \ 表示後面的字元就是本身字元的意思,不具有其他作用
    • \t 表示一個tab鍵的距離 ,製表符
    • \n 換行符 相當於回車鍵
    • \ 表示反斜槓
    • r’'表示的是原始字串,表示引號中的內容沒有其他意思,就是字元本身
  • 操作字串
    如有字串 mystr = ‘hello world itcast and itcastcpp’ ,以下是常見的操作
    find
    檢測 str 是否包含在 mystr中,如果是返回開始的索引值,否則返回-1
 mystr.find(str, start=0, end=len(mystr))

在这里插入图片描述
index
跟find() 法 樣,只不過如果str不在 mystr中會報 個異常.

mystr.index(str, start=0, end=len(mystr))

在这里插入图片描述

count 返回 str在start和end之間 在 mystr 之間出現的次數 ![在這裏插入圖片描述](https://img-blog.csdnimg.cn/20200811161945598.png)

replace
把mystr 中的 str1 替換成 str2,如果 count 指定,則替換不超過 count 次.

mystr.replace(str1, str2,	mystr.count(str1))

在这里插入图片描述
split
以 str 爲分隔符切⽚ mystr,如果 maxsplit有指定值,則僅分隔 maxsplit 個⼦字串

mystr.split(str=" ", 2)

在这里插入图片描述

capitalize
把字串的第⼀個字元⼤寫

1mystr.capitalize()

在这里插入图片描述

title
把字串的每個單詞⾸字⺟⼤寫

1 >>> a = "hello itcast"
2 >>> a.title()
3 'Hello Itcast'

startswith
檢查字串是否是以 指定字串開頭 , 是則返回 True,否則返回 False

str = 'hello 123 321 abc dasdadfsdf'

print(str.startswith('hello'))

endswith
檢查字串是否以指定字串結尾,如果是返回True,否則返回 False.
在这里插入图片描述

lower
轉換 mystr 中所有⼤寫字元爲⼩寫
在这里插入图片描述

upper
轉換 mystr 中的⼩寫字⺟爲⼤寫。
mystr.upper()
在这里插入图片描述

ljust
返回⼀個原字串左對⻬,並使⽤空格填充⾄⻓度 width 的新字串
在这里插入图片描述

rjust
返回⼀個原字串右對⻬,並使⽤空格填充⾄⻓度 width 的新字串
在这里插入图片描述

center
返回⼀個原字串居中,並使⽤空格填充⾄⻓度 width 的新字串
在这里插入图片描述

lstrip
刪除 mystr 左邊的空⽩字元
在这里插入图片描述

rstrip
刪除 mystr 字串末尾的空⽩字元
在这里插入图片描述

strip
刪除mystr字串兩端的空⽩字元


1 >>> a = "\n\t itcast \t\n"

2 >>> a.strip()

3'itcast'

rfind
類似於 find()函數,不過是從右邊開始查詢.
在这里插入图片描述

rindex
類似於 index(),不過是從右邊開始.
在这里插入图片描述

    partition 把mystr以str分割成三部分,str前,str和str後 ![在這裏插入圖片描述](https://img-blog.csdnimg.cn/20200811164922496.png)

rpartition
類似於 partition()函數,不過是從右邊開始.
在这里插入图片描述

splitlines
按照 分隔,返回 個包含各 作爲元素的列表
在这里插入图片描述

isalpha
如果 mystr 所有字元都是字⺟ 則返回 True,否則返回 False
在这里插入图片描述

isdigit
如果 mystr 只包含數位則返回 True 否則返回 False
在这里插入图片描述

isalnum
如果 mystr 所有字元都是字⺟或數位則返回 True,否則返回 False
在这里插入图片描述

isspace
如果 mystr 中只包含空格,則返回 True,否則返回 False.
在这里插入图片描述

join
mystr 中每個元素後⾯插⼊str,構造出⼀個新的字串
在这里插入图片描述

6. 長字串

  • 長字串 又叫做文件字串 我們使用三重引號來表示一個長字串’’’ ‘’’
  • 三重引號可以換行,並且會保留字串中的格式

格式化字串

第一種格式化字串 拼串

第二種格式化字串 參數傳遞

第三種格式化字串 佔位符

%s 字串佔位

%f 浮點數佔位

%d 整數佔位

第四種格式化字串 f’{變數}’/ str.format

字串的其他操作

7

len() 字串的長度

max() 最大值

min() 最小值

split()分割字串

join()拼接字串

去空格

s.strip() 左右兩邊去空格

s.lstrip() 去左邊空格

s.rstrip() 去右邊空格

字串大小寫

s.upper() 全部大寫

s.lower() 全部小寫

s.isupper() 判斷是不是大寫

s.islower() 判斷是不是小寫

HOMEWORK:

a,b = 6, 8 我想讓a=8 b=6我該怎麼辦? 2種 式實print()

#結合當天的內容寫的
#!/user/bin/env python
# -*- coding:utf-8 -*-
# @Time     : 10/8/2020 下午 7:53
# @Author   : Cheney
# @File     : 123.py
# @Software : PyCharm

# print(str.startswith('helli'))
# a,b = 6, 8 我想讓a=8 b=6我該怎麼辦? 2種 式實print()
# 語句練習, 兩種 式列印 hello,python
#1
a,b = 6, 8
c =a
a = b
b = c
print(a,b)
#2
a,b = 6, 8
a = a+b
b = a-b
a = a-b
print(a,b)
#3
a,b = 6,8
c = [a,b]
a= max(c)
b=min(c)
print(a,b)
#4
a,b = 6,8
str = '六'
str_a = str * a
str_b = str * b
a = len(str_b)
b = len(str_a)
print(a,b)
#5

a,b='6''8'
c=''
c = c.join(a)
a = a.join(b)
b = b.join(c)
print(a,b)
#6
a,b='6','8'
c=''
c=a
a=a.replace(a,b)
b=b.replace(b,c)
print(a,b)
#7
def changVal(num):
    if num==6:
        return 8
    else:
        return 6
a,b = 6,8
a = changval(a)
b = changval(b)
print(a,b)
# 8
a,b=6,8
a,b=b,a
print(a,b)

語句練習, 兩種 式列印 hello,python

# 語句練習, 兩種 式列印 hello,python
#1
str = 'hello,python'
print(str)
#2
str = ''
str_List =['hello,','python']
str = str.join(str_List)
print(str)
#3
str_a,str_b ='hello','python'
print(str_a+','+str_b)